From 36a1d3a486d11e17779f88e91cd6dcf8dde6e301 Mon Sep 17 00:00:00 2001 From: Sebastian Goll Date: Fri, 1 Aug 2025 14:13:22 +0200 Subject: [PATCH 01/15] Switch to `master` branch of open62541 --- CHANGELOG.md | 5 +++++ open62541 | 2 +- wrapper.h | 10 +++------- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0dc2f2e..11794e1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,11 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] +### Changed + +- Breaking: Upgrade to open62541 version + [1.5.0](https://github.com/open62541/open62541/releases/tag/v1.5.0). + ## [0.5.1] - 2025-10-21 ### Changed diff --git a/open62541 b/open62541 index 76e425e..4cf4f7a 160000 --- a/open62541 +++ b/open62541 @@ -1 +1 @@ -Subproject commit 76e425ee963e8c16c0414f2f6bd0c7a5761a92c3 +Subproject commit 4cf4f7a4b21149c4ad8eb1a0a4b783a3266a425d diff --git a/wrapper.h b/wrapper.h index c22771b..ae61313 100644 --- a/wrapper.h +++ b/wrapper.h @@ -8,17 +8,13 @@ #include #include #include +#include +#include +#include #include #include -#include -#include #include - -// Include files that are only available (by CMake) with certain flags. -#ifdef UA_ENABLE_ENCRYPTION -#include #include -#endif // Include with binding of `vsnprintf()` and `va_list` functions to simplify // formatting of log messages. From 2a54155d491cb2066e9cf842929fa35084cf89ed Mon Sep 17 00:00:00 2001 From: Sebastian Goll Date: Fri, 29 Aug 2025 15:13:46 +0200 Subject: [PATCH 02/15] Remove unused `vsnprintf` wrappers --- tests/integration.rs | 38 ++++++++---------------------- wrapper.c | 56 +------------------------------------------- wrapper.h | 24 +------------------ 3 files changed, 12 insertions(+), 106 deletions(-) diff --git a/tests/integration.rs b/tests/integration.rs index 09f3189..936aeb2 100644 --- a/tests/integration.rs +++ b/tests/integration.rs @@ -5,9 +5,9 @@ use open62541_sys::{ va_list_, }; +// Check validity of explicitly defined type aliases. #[test] -fn variadic_arguments() { - // Check if `va_list_` type matches. +fn type_aliases() { const unsafe extern "C" fn log_c( _log_context: *mut ffi::c_void, _level: UA_LogLevel, @@ -15,26 +15,13 @@ fn variadic_arguments() { _msg: *const ffi::c_char, _args: va_list_, ) { + // Nothing here. } - let _logger = UA_Logger { - log: Some(log_c), - context: ptr::null_mut(), - clear: None, - }; -} -#[test] -fn logger_types() { - // Check validity of type aliases for `UA_Logger` callbacks. - const unsafe extern "C" fn log_c( - _log_context: *mut ffi::c_void, - _level: UA_LogLevel, - _category: UA_LogCategory, - _msg: *const ffi::c_char, - _args: va_list_, - ) { + const unsafe extern "C" fn clear_c(_logger: *mut UA_Logger) { + // Nothing here. } - const unsafe extern "C" fn clear_c(_logger: *mut UA_Logger) {} + let log: UA_LoggerLogCallback_ = Some(log_c); let clear: UA_LoggerClearCallback_ = Some(clear_c); let _logger = UA_Logger { @@ -44,16 +31,11 @@ fn logger_types() { }; } +// Make sure that our custom exports (prefixed with `RS_`) are available under their expected names, +// i.e. without the `RS_` prefix. #[test] -fn has_custom_exports() { - // Make sure that our custom exports (prefixed internally with `RS_`) are available under their - // expected names. - // - use open62541_sys::{UA_EMPTY_ARRAY_SENTINEL, vsnprintf_va_copy, vsnprintf_va_end}; +fn custom_exports() { + use open62541_sys::UA_EMPTY_ARRAY_SENTINEL; - #[expect(clippy::no_effect_underscore_binding, reason = "check existence")] - let _unused = vsnprintf_va_copy; - #[expect(clippy::no_effect_underscore_binding, reason = "check existence")] - let _unused = vsnprintf_va_end; let _unused = unsafe { UA_EMPTY_ARRAY_SENTINEL }; } diff --git a/wrapper.c b/wrapper.c index d2bd384..2c5d25b 100644 --- a/wrapper.c +++ b/wrapper.c @@ -1,61 +1,7 @@ #include "wrapper.h" -// Wrapper for `vsnprintf()` with normalized behavior across different platforms -// such as Microsoft Windows. -// -// Other than the standard `vsnprintf()`, this function does not consume the -// passed `va_list` argument! The caller is responsible for calling -// `vsnprintf_va_end()` on the `va_list` argument eventually. -#if defined(_MSC_VER) && _MSC_VER < 1900 -int RS_vsnprintf_va_copy( - char *buffer, - size_t count, - const char *format, - va_list args) -{ - // Microsoft does not (always) define a standard-conforming `vsnprintf()`. But - // it does define a variant with slightly different behavior. We normalize the - // differences as best we can. - int result = -1; - if (count) - { - va_list args_copied; - va_copy(args_copied, args); - result = _vsnprintf_s(buffer, count, _TRUNCATE, format, args_copied); - } - if (result < 0) - { - va_list args_copied; - va_copy(args_copied, args); - result = _vscprintf(format, args_copied); - } - - return result; -} -#else -int RS_vsnprintf_va_copy( - char *buffer, - size_t count, - const char *format, - va_list args) -{ - // Forward to existing standards-compliant function. It may have be defined as - // a macro, so we need a wrapper function for bindgen to pick it up anyway. - va_list args_copied; - va_copy(args_copied, args); - int result = vsnprintf(buffer, count, format, args_copied); - - return result; -} -#endif - -void RS_vsnprintf_va_end(va_list args) -{ - va_end(args); -} - // bindgen does not support non-trivial `#define` used for pointer constant. Use // statically defined constant as workaround for now. // -// See https://github.com/rust-lang/rust-bindgen/issues/2426 +// See . const void *const RS_UA_EMPTY_ARRAY_SENTINEL = UA_EMPTY_ARRAY_SENTINEL; diff --git a/wrapper.h b/wrapper.h index ae61313..86a960b 100644 --- a/wrapper.h +++ b/wrapper.h @@ -16,30 +16,8 @@ #include #include -// Include with binding of `vsnprintf()` and `va_list` functions to simplify -// formatting of log messages. -#include -#include - // bindgen does not support non-trivial `#define` used for pointer constant. Use // statically defined constant as workaround for now. // -// See https://github.com/rust-lang/rust-bindgen/issues/2426 +// See . extern const void *const RS_UA_EMPTY_ARRAY_SENTINEL; - -// Wrapper for `vsnprintf()` with normalized behavior across different platforms -// such as Microsoft Windows. -// -// Other than the standard `vsnprintf()`, this implementation copies the -// `va_list` argument before passing it along to allow repeated calls. The -// caller is responsible to invoke `vsnprintf_va_end()` on the `va_list` -// argument eventually. -int RS_vsnprintf_va_copy( - char *buffer, - size_t count, - const char *format, - va_list args); - -// Wrapper for `va_end()` that is supposed to be used with -// `vsnprintf_va_copy()`. -void RS_vsnprintf_va_end(va_list args); From e72e9d34a1831b90c6f3d30962058956507b83b9 Mon Sep 17 00:00:00 2001 From: Sebastian Goll Date: Mon, 1 Sep 2025 14:30:44 +0200 Subject: [PATCH 03/15] Skip broken builds on Ubuntu 22.04 with GNU libc --- .github/workflows/latest-dependencies.yaml | 12 ++++++++++-- .github/workflows/test.yaml | 12 ++++++++++-- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/.github/workflows/latest-dependencies.yaml b/.github/workflows/latest-dependencies.yaml index cea05bc..4fe9ecc 100644 --- a/.github/workflows/latest-dependencies.yaml +++ b/.github/workflows/latest-dependencies.yaml @@ -100,14 +100,18 @@ jobs: cargo update --verbose - name: Build with feature combinations + # Disable build for GNU targets on Ubuntu 22.04 (unsupported `atomic_uintptr_t`). + # TODO: Try to re-enable this step regardless of the build target in the future. + if: ${{ matrix.runner_os != 'ubuntu-22.04' || endsWith(matrix.target, '-musl') }} run: >- cargo hack --each-feature build --locked - name: Run tests (bins/lib/tests/examples) with feature combinations + # Disable build for GNU targets on Ubuntu 22.04 (unsupported `atomic_uintptr_t`). # Disable tests for musl libc target(s) due to build failure for unknown reasons. # TODO: Try to re-enable this step regardless of the build target in the future. - if: ${{ !endsWith(matrix.target, '-musl') }} + if: ${{ matrix.runner_os != 'ubuntu-22.04' && !endsWith(matrix.target, '-musl') }} run: >- cargo hack --each-feature test --locked @@ -120,15 +124,19 @@ jobs: # certain features only for some doctests, so we run them without # `cargo-hack`. - name: Run doctests with all features enabled + # Disable build for GNU targets on Ubuntu 22.04 (unsupported `atomic_uintptr_t`). # Disable tests for musl libc target(s) due to build failure for unknown reasons. # TODO: Try to re-enable this step regardless of the build target in the future. - if: ${{ !endsWith(matrix.target, '-musl') }} + if: ${{ matrix.runner_os != 'ubuntu-22.04' && !endsWith(matrix.target, '-musl') }} run: >- cargo test --locked --all-features --doc - name: Build package with all features enabled + # Disable build for GNU targets on Ubuntu 22.04 (unsupported `atomic_uintptr_t`). + # TODO: Try to re-enable this step regardless of the build target in the future. + if: ${{ matrix.runner_os != 'ubuntu-22.04' || endsWith(matrix.target, '-musl') }} # We allow dirty state here because it is only expected after update. run: >- cargo package diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 287834d..d3cc1ac 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -116,14 +116,18 @@ jobs: shared-key: ${{ github.workflow }}-${{ github.job }}-${{ matrix.target }}-${{ matrix.runner_os }} - name: Build with feature combinations + # Disable build for GNU targets on Ubuntu 22.04 (unsupported `atomic_uintptr_t`). + # TODO: Try to re-enable this step regardless of the build target in the future. + if: ${{ matrix.runner_os != 'ubuntu-22.04' || endsWith(matrix.target, '-musl') }} run: >- cargo hack --each-feature build --locked - name: Run tests (bins/lib/tests/examples) with feature combinations + # Disable build for GNU targets on Ubuntu 22.04 (unsupported `atomic_uintptr_t`). # Disable tests for musl libc target(s) due to build failure for unknown reasons. # TODO: Try to re-enable this step regardless of the build target in the future. - if: ${{ !endsWith(matrix.target, '-musl') }} + if: ${{ matrix.runner_os != 'ubuntu-22.04' && !endsWith(matrix.target, '-musl') }} run: >- cargo hack --each-feature test --locked @@ -136,15 +140,19 @@ jobs: # certain features only for some doctests, so we run them without # `cargo-hack`. - name: Run doctests with all features enabled + # Disable build for GNU targets on Ubuntu 22.04 (unsupported `atomic_uintptr_t`). # Disable tests for musl libc target(s) due to build failure for unknown reasons. # TODO: Try to re-enable this step regardless of the build target in the future. - if: ${{ !endsWith(matrix.target, '-musl') }} + if: ${{ matrix.runner_os != 'ubuntu-22.04' && !endsWith(matrix.target, '-musl') }} run: >- cargo test --locked --all-features --doc - name: Build package with all features enabled + # Disable build for GNU targets on Ubuntu 22.04 (unsupported `atomic_uintptr_t`). + # TODO: Try to re-enable this step regardless of the build target in the future. + if: ${{ matrix.runner_os != 'ubuntu-22.04' || endsWith(matrix.target, '-musl') }} run: >- cargo package --locked --all-features From 9cc00579215d4656a91b5b862b0e08db9051a327 Mon Sep 17 00:00:00 2001 From: Sebastian Goll Date: Wed, 7 Jan 2026 14:33:49 +0100 Subject: [PATCH 04/15] Switch to tag `v1.5.0-rc2` of open62541 --- open62541 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/open62541 b/open62541 index 4cf4f7a..15c54da 160000 --- a/open62541 +++ b/open62541 @@ -1 +1 @@ -Subproject commit 4cf4f7a4b21149c4ad8eb1a0a4b783a3266a425d +Subproject commit 15c54da61c8342713573bc3a661ae312819398c7 From 0436abe8fac4a23340cbe1eb15a50c26017b262f Mon Sep 17 00:00:00 2001 From: Uwe Klotz Date: Fri, 27 Feb 2026 11:31:25 +0100 Subject: [PATCH 05/15] Upgrade to open62541 v1.5.2 (#90) --- .pre-commit-config.yaml | 4 +-- Cargo.lock | 68 ++++++++++++++++++++--------------------- Cargo.toml | 4 +-- open62541 | 2 +- 4 files changed, 39 insertions(+), 39 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index d5a19ee..59ed5a9 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -22,7 +22,7 @@ repos: - id: mixed-line-ending - id: trailing-whitespace - repo: https://github.com/DavidAnson/markdownlint-cli2 - rev: v0.18.1 + rev: v0.21.0 hooks: - id: markdownlint-cli2 - repo: https://github.com/codespell-project/codespell @@ -31,7 +31,7 @@ repos: - id: codespell args: [--ignore-words=.codespellignore] - repo: https://github.com/sirosen/check-jsonschema - rev: 0.34.0 + rev: 0.36.2 hooks: - id: check-github-actions - id: check-github-workflows diff --git a/Cargo.lock b/Cargo.lock index c14e652..52c314f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4,9 +4,9 @@ version = 4 [[package]] name = "aho-corasick" -version = "1.1.3" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" dependencies = [ "memchr", ] @@ -33,15 +33,15 @@ dependencies = [ [[package]] name = "bitflags" -version = "2.9.4" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394" +checksum = "843867be96c8daad0d758b57df9392b6d8d271134fce549de6ce169ff98a92af" [[package]] name = "cc" -version = "1.2.38" +version = "1.2.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80f41ae168f955c12fb8960b057d70d0ca153fb83182b57d86380443527be7e9" +checksum = "aebf35691d1bfb0ac386a69bac2fde4dd276fb618cf8bf4f5318fe285e821bb2" dependencies = [ "find-msvc-tools", "shlex", @@ -58,9 +58,9 @@ dependencies = [ [[package]] name = "cfg-if" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9" +checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" [[package]] name = "clang-sys" @@ -75,9 +75,9 @@ dependencies = [ [[package]] name = "cmake" -version = "0.1.54" +version = "0.1.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7caa3f9de89ddbe2c607f4101924c5abec803763ae9534e4f4d7d8f84aa81f0" +checksum = "75443c44cd6b379beb8c5b45d85d0773baf31cce901fe7bb252f4eff3008ef7d" dependencies = [ "cc", ] @@ -90,9 +90,9 @@ checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" [[package]] name = "find-msvc-tools" -version = "0.1.2" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ced73b1dacfc750a6db6c0a0c3a3853c8b41997e2e2c563dc90804ae6867959" +checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582" [[package]] name = "glob" @@ -111,9 +111,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.175" +version = "0.2.182" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543" +checksum = "6800badb6cb2082ffd7b6a67e6125bb39f18782f793520caee8cb8846be06112" [[package]] name = "libloading" @@ -127,15 +127,15 @@ dependencies = [ [[package]] name = "log" -version = "0.4.28" +version = "0.4.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432" +checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" [[package]] name = "memchr" -version = "2.7.5" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" +checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79" [[package]] name = "minimal-lexical" @@ -175,27 +175,27 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.101" +version = "1.0.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de" +checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934" dependencies = [ "unicode-ident", ] [[package]] name = "quote" -version = "1.0.40" +version = "1.0.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" +checksum = "21b2ebcf727b7760c461f091f9f0f539b77b8e87f2fd88131e7f1b433b3cece4" dependencies = [ "proc-macro2", ] [[package]] name = "regex" -version = "1.11.2" +version = "1.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23d7fd106d8c02486a8d64e778353d1cffe08ce79ac2e82f540c86d0facf6912" +checksum = "e10754a14b9137dd7b1e3e5b0493cc9171fdd105e0ab477f51b72e7f3ac0e276" dependencies = [ "aho-corasick", "memchr", @@ -205,9 +205,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.10" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b9458fa0bfeeac22b5ca447c63aaf45f28439a709ccd244698632f9aa6394d6" +checksum = "6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f" dependencies = [ "aho-corasick", "memchr", @@ -216,9 +216,9 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.8.6" +version = "0.8.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "caf4aa5b0f434c91fe5c7f1ecb6a5ece2130b02ad2a590589dda5146df959001" +checksum = "dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a" [[package]] name = "rustc-hash" @@ -234,9 +234,9 @@ checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] name = "syn" -version = "2.0.106" +version = "2.0.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6" +checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99" dependencies = [ "proc-macro2", "quote", @@ -245,9 +245,9 @@ dependencies = [ [[package]] name = "unicode-ident" -version = "1.0.19" +version = "1.0.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d" +checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" [[package]] name = "version_check" @@ -257,6 +257,6 @@ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" [[package]] name = "windows-link" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65" +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" diff --git a/Cargo.toml b/Cargo.toml index 8c749e9..22c51af 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -59,8 +59,8 @@ include = [ [build-dependencies] bindgen = { version = "0.72.1" } -cc = "1.2.38" -cmake = "0.1.54" +cc = "1.2.56" +cmake = "0.1.57" version_check = "0.9.5" [features] diff --git a/open62541 b/open62541 index 15c54da..12ae25e 160000 --- a/open62541 +++ b/open62541 @@ -1 +1 @@ -Subproject commit 15c54da61c8342713573bc3a661ae312819398c7 +Subproject commit 12ae25e5f3eb874c70c9bf6ce619e1546fc994d6 From 58a12afd700f485d861ef485c77a4010b6666148 Mon Sep 17 00:00:00 2001 From: Sebastian Goll Date: Fri, 27 Feb 2026 11:33:01 +0100 Subject: [PATCH 06/15] Update changelog --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 11794e1..7055072 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,7 +10,7 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ### Changed - Breaking: Upgrade to open62541 version - [1.5.0](https://github.com/open62541/open62541/releases/tag/v1.5.0). + [1.5.2](https://github.com/open62541/open62541/releases/tag/v1.5.2). ## [0.5.1] - 2025-10-21 From 36066c4ab9444f8549f4ab7aacdc534cb10293d2 Mon Sep 17 00:00:00 2001 From: Sebastian Goll Date: Fri, 27 Feb 2026 11:47:28 +0100 Subject: [PATCH 07/15] Add workaround for missing status code definitions --- wrapper.h | 254 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 254 insertions(+) diff --git a/wrapper.h b/wrapper.h index 86a960b..83f558d 100644 --- a/wrapper.h +++ b/wrapper.h @@ -21,3 +21,257 @@ // // See . extern const void *const RS_UA_EMPTY_ARRAY_SENTINEL; + +// bindgen has problems with trivially defined macro constants, for some reason. +// The following list has been taken from `statuscodes.c`. +const UA_StatusCode RS_UA_STATUSCODE_GOOD = UA_STATUSCODE_GOOD; +const UA_StatusCode RS_UA_STATUSCODE_UNCERTAIN = UA_STATUSCODE_UNCERTAIN; +const UA_StatusCode RS_UA_STATUSCODE_BAD = UA_STATUSCODE_BAD; +const UA_StatusCode RS_UA_STATUSCODE_BADUNEXPECTEDERROR = UA_STATUSCODE_BADUNEXPECTEDERROR; +const UA_StatusCode RS_UA_STATUSCODE_BADINTERNALERROR = UA_STATUSCODE_BADINTERNALERROR; +const UA_StatusCode RS_UA_STATUSCODE_BADOUTOFMEMORY = UA_STATUSCODE_BADOUTOFMEMORY; +const UA_StatusCode RS_UA_STATUSCODE_BADRESOURCEUNAVAILABLE = UA_STATUSCODE_BADRESOURCEUNAVAILABLE; +const UA_StatusCode RS_UA_STATUSCODE_BADCOMMUNICATIONERROR = UA_STATUSCODE_BADCOMMUNICATIONERROR; +const UA_StatusCode RS_UA_STATUSCODE_BADENCODINGERROR = UA_STATUSCODE_BADENCODINGERROR; +const UA_StatusCode RS_UA_STATUSCODE_BADDECODINGERROR = UA_STATUSCODE_BADDECODINGERROR; +const UA_StatusCode RS_UA_STATUSCODE_BADENCODINGLIMITSEXCEEDED = UA_STATUSCODE_BADENCODINGLIMITSEXCEEDED; +const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTTOOLARGE = UA_STATUSCODE_BADREQUESTTOOLARGE; +const UA_StatusCode RS_UA_STATUSCODE_BADRESPONSETOOLARGE = UA_STATUSCODE_BADRESPONSETOOLARGE; +const UA_StatusCode RS_UA_STATUSCODE_BADUNKNOWNRESPONSE = UA_STATUSCODE_BADUNKNOWNRESPONSE; +const UA_StatusCode RS_UA_STATUSCODE_BADTIMEOUT = UA_STATUSCODE_BADTIMEOUT; +const UA_StatusCode RS_UA_STATUSCODE_BADSERVICEUNSUPPORTED = UA_STATUSCODE_BADSERVICEUNSUPPORTED; +const UA_StatusCode RS_UA_STATUSCODE_BADSHUTDOWN = UA_STATUSCODE_BADSHUTDOWN; +const UA_StatusCode RS_UA_STATUSCODE_BADSERVERNOTCONNECTED = UA_STATUSCODE_BADSERVERNOTCONNECTED; +const UA_StatusCode RS_UA_STATUSCODE_BADSERVERHALTED = UA_STATUSCODE_BADSERVERHALTED; +const UA_StatusCode RS_UA_STATUSCODE_BADNOTHINGTODO = UA_STATUSCODE_BADNOTHINGTODO; +const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYOPERATIONS = UA_STATUSCODE_BADTOOMANYOPERATIONS; +const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYMONITOREDITEMS = UA_STATUSCODE_BADTOOMANYMONITOREDITEMS; +const UA_StatusCode RS_UA_STATUSCODE_BADDATATYPEIDUNKNOWN = UA_STATUSCODE_BADDATATYPEIDUNKNOWN; +const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEINVALID = UA_STATUSCODE_BADCERTIFICATEINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADSECURITYCHECKSFAILED = UA_STATUSCODE_BADSECURITYCHECKSFAILED; +const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEPOLICYCHECKFAILED = UA_STATUSCODE_BADCERTIFICATEPOLICYCHECKFAILED; +const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATETIMEINVALID = UA_STATUSCODE_BADCERTIFICATETIMEINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEISSUERTIMEINVALID = UA_STATUSCODE_BADCERTIFICATEISSUERTIMEINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEHOSTNAMEINVALID = UA_STATUSCODE_BADCERTIFICATEHOSTNAMEINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEURIINVALID = UA_STATUSCODE_BADCERTIFICATEURIINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEUSENOTALLOWED = UA_STATUSCODE_BADCERTIFICATEUSENOTALLOWED; +const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEISSUERUSENOTALLOWED = UA_STATUSCODE_BADCERTIFICATEISSUERUSENOTALLOWED; +const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEUNTRUSTED = UA_STATUSCODE_BADCERTIFICATEUNTRUSTED; +const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEREVOCATIONUNKNOWN = UA_STATUSCODE_BADCERTIFICATEREVOCATIONUNKNOWN; +const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEISSUERREVOCATIONUNKNOWN = UA_STATUSCODE_BADCERTIFICATEISSUERREVOCATIONUNKNOWN; +const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEREVOKED = UA_STATUSCODE_BADCERTIFICATEREVOKED; +const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEISSUERREVOKED = UA_STATUSCODE_BADCERTIFICATEISSUERREVOKED; +const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATECHAININCOMPLETE = UA_STATUSCODE_BADCERTIFICATECHAININCOMPLETE; +const UA_StatusCode RS_UA_STATUSCODE_BADUSERACCESSDENIED = UA_STATUSCODE_BADUSERACCESSDENIED; +const UA_StatusCode RS_UA_STATUSCODE_BADIDENTITYTOKENINVALID = UA_STATUSCODE_BADIDENTITYTOKENINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADIDENTITYTOKENREJECTED = UA_STATUSCODE_BADIDENTITYTOKENREJECTED; +const UA_StatusCode RS_UA_STATUSCODE_BADSECURECHANNELIDINVALID = UA_STATUSCODE_BADSECURECHANNELIDINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADINVALIDTIMESTAMP = UA_STATUSCODE_BADINVALIDTIMESTAMP; +const UA_StatusCode RS_UA_STATUSCODE_BADNONCEINVALID = UA_STATUSCODE_BADNONCEINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADSESSIONIDINVALID = UA_STATUSCODE_BADSESSIONIDINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADSESSIONCLOSED = UA_STATUSCODE_BADSESSIONCLOSED; +const UA_StatusCode RS_UA_STATUSCODE_BADSESSIONNOTACTIVATED = UA_STATUSCODE_BADSESSIONNOTACTIVATED; +const UA_StatusCode RS_UA_STATUSCODE_BADSUBSCRIPTIONIDINVALID = UA_STATUSCODE_BADSUBSCRIPTIONIDINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTHEADERINVALID = UA_STATUSCODE_BADREQUESTHEADERINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADTIMESTAMPSTORETURNINVALID = UA_STATUSCODE_BADTIMESTAMPSTORETURNINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTCANCELLEDBYCLIENT = UA_STATUSCODE_BADREQUESTCANCELLEDBYCLIENT; +const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYARGUMENTS = UA_STATUSCODE_BADTOOMANYARGUMENTS; +const UA_StatusCode RS_UA_STATUSCODE_BADLICENSEEXPIRED = UA_STATUSCODE_BADLICENSEEXPIRED; +const UA_StatusCode RS_UA_STATUSCODE_BADLICENSELIMITSEXCEEDED = UA_STATUSCODE_BADLICENSELIMITSEXCEEDED; +const UA_StatusCode RS_UA_STATUSCODE_BADLICENSENOTAVAILABLE = UA_STATUSCODE_BADLICENSENOTAVAILABLE; +const UA_StatusCode RS_UA_STATUSCODE_GOODSUBSCRIPTIONTRANSFERRED = UA_STATUSCODE_GOODSUBSCRIPTIONTRANSFERRED; +const UA_StatusCode RS_UA_STATUSCODE_GOODCOMPLETESASYNCHRONOUSLY = UA_STATUSCODE_GOODCOMPLETESASYNCHRONOUSLY; +const UA_StatusCode RS_UA_STATUSCODE_GOODOVERLOAD = UA_STATUSCODE_GOODOVERLOAD; +const UA_StatusCode RS_UA_STATUSCODE_GOODCLAMPED = UA_STATUSCODE_GOODCLAMPED; +const UA_StatusCode RS_UA_STATUSCODE_BADNOCOMMUNICATION = UA_STATUSCODE_BADNOCOMMUNICATION; +const UA_StatusCode RS_UA_STATUSCODE_BADWAITINGFORINITIALDATA = UA_STATUSCODE_BADWAITINGFORINITIALDATA; +const UA_StatusCode RS_UA_STATUSCODE_BADNODEIDINVALID = UA_STATUSCODE_BADNODEIDINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADNODEIDUNKNOWN = UA_STATUSCODE_BADNODEIDUNKNOWN; +const UA_StatusCode RS_UA_STATUSCODE_BADATTRIBUTEIDINVALID = UA_STATUSCODE_BADATTRIBUTEIDINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADINDEXRANGEINVALID = UA_STATUSCODE_BADINDEXRANGEINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADINDEXRANGENODATA = UA_STATUSCODE_BADINDEXRANGENODATA; +const UA_StatusCode RS_UA_STATUSCODE_BADDATAENCODINGINVALID = UA_STATUSCODE_BADDATAENCODINGINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADDATAENCODINGUNSUPPORTED = UA_STATUSCODE_BADDATAENCODINGUNSUPPORTED; +const UA_StatusCode RS_UA_STATUSCODE_BADNOTREADABLE = UA_STATUSCODE_BADNOTREADABLE; +const UA_StatusCode RS_UA_STATUSCODE_BADNOTWRITABLE = UA_STATUSCODE_BADNOTWRITABLE; +const UA_StatusCode RS_UA_STATUSCODE_BADOUTOFRANGE = UA_STATUSCODE_BADOUTOFRANGE; +const UA_StatusCode RS_UA_STATUSCODE_BADNOTSUPPORTED = UA_STATUSCODE_BADNOTSUPPORTED; +const UA_StatusCode RS_UA_STATUSCODE_BADNOTFOUND = UA_STATUSCODE_BADNOTFOUND; +const UA_StatusCode RS_UA_STATUSCODE_BADOBJECTDELETED = UA_STATUSCODE_BADOBJECTDELETED; +const UA_StatusCode RS_UA_STATUSCODE_BADNOTIMPLEMENTED = UA_STATUSCODE_BADNOTIMPLEMENTED; +const UA_StatusCode RS_UA_STATUSCODE_BADMONITORINGMODEINVALID = UA_STATUSCODE_BADMONITORINGMODEINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADMONITOREDITEMIDINVALID = UA_STATUSCODE_BADMONITOREDITEMIDINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADMONITOREDITEMFILTERINVALID = UA_STATUSCODE_BADMONITOREDITEMFILTERINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADMONITOREDITEMFILTERUNSUPPORTED = UA_STATUSCODE_BADMONITOREDITEMFILTERUNSUPPORTED; +const UA_StatusCode RS_UA_STATUSCODE_BADFILTERNOTALLOWED = UA_STATUSCODE_BADFILTERNOTALLOWED; +const UA_StatusCode RS_UA_STATUSCODE_BADSTRUCTUREMISSING = UA_STATUSCODE_BADSTRUCTUREMISSING; +const UA_StatusCode RS_UA_STATUSCODE_BADEVENTFILTERINVALID = UA_STATUSCODE_BADEVENTFILTERINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADCONTENTFILTERINVALID = UA_STATUSCODE_BADCONTENTFILTERINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADFILTEROPERATORINVALID = UA_STATUSCODE_BADFILTEROPERATORINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADFILTEROPERATORUNSUPPORTED = UA_STATUSCODE_BADFILTEROPERATORUNSUPPORTED; +const UA_StatusCode RS_UA_STATUSCODE_BADFILTEROPERANDCOUNTMISMATCH = UA_STATUSCODE_BADFILTEROPERANDCOUNTMISMATCH; +const UA_StatusCode RS_UA_STATUSCODE_BADFILTEROPERANDINVALID = UA_STATUSCODE_BADFILTEROPERANDINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADFILTERELEMENTINVALID = UA_STATUSCODE_BADFILTERELEMENTINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADFILTERLITERALINVALID = UA_STATUSCODE_BADFILTERLITERALINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADCONTINUATIONPOINTINVALID = UA_STATUSCODE_BADCONTINUATIONPOINTINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADNOCONTINUATIONPOINTS = UA_STATUSCODE_BADNOCONTINUATIONPOINTS; +const UA_StatusCode RS_UA_STATUSCODE_BADREFERENCETYPEIDINVALID = UA_STATUSCODE_BADREFERENCETYPEIDINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADBROWSEDIRECTIONINVALID = UA_STATUSCODE_BADBROWSEDIRECTIONINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADNODENOTINVIEW = UA_STATUSCODE_BADNODENOTINVIEW; +const UA_StatusCode RS_UA_STATUSCODE_BADNUMERICOVERFLOW = UA_STATUSCODE_BADNUMERICOVERFLOW; +const UA_StatusCode RS_UA_STATUSCODE_BADSERVERURIINVALID = UA_STATUSCODE_BADSERVERURIINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADSERVERNAMEMISSING = UA_STATUSCODE_BADSERVERNAMEMISSING; +const UA_StatusCode RS_UA_STATUSCODE_BADDISCOVERYURLMISSING = UA_STATUSCODE_BADDISCOVERYURLMISSING; +const UA_StatusCode RS_UA_STATUSCODE_BADSEMAPHOREFILEMISSING = UA_STATUSCODE_BADSEMAPHOREFILEMISSING; +const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTTYPEINVALID = UA_STATUSCODE_BADREQUESTTYPEINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADSECURITYMODEREJECTED = UA_STATUSCODE_BADSECURITYMODEREJECTED; +const UA_StatusCode RS_UA_STATUSCODE_BADSECURITYPOLICYREJECTED = UA_STATUSCODE_BADSECURITYPOLICYREJECTED; +const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYSESSIONS = UA_STATUSCODE_BADTOOMANYSESSIONS; +const UA_StatusCode RS_UA_STATUSCODE_BADUSERSIGNATUREINVALID = UA_STATUSCODE_BADUSERSIGNATUREINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADAPPLICATIONSIGNATUREINVALID = UA_STATUSCODE_BADAPPLICATIONSIGNATUREINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADNOVALIDCERTIFICATES = UA_STATUSCODE_BADNOVALIDCERTIFICATES; +const UA_StatusCode RS_UA_STATUSCODE_BADIDENTITYCHANGENOTSUPPORTED = UA_STATUSCODE_BADIDENTITYCHANGENOTSUPPORTED; +const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTCANCELLEDBYREQUEST = UA_STATUSCODE_BADREQUESTCANCELLEDBYREQUEST; +const UA_StatusCode RS_UA_STATUSCODE_BADPARENTNODEIDINVALID = UA_STATUSCODE_BADPARENTNODEIDINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADREFERENCENOTALLOWED = UA_STATUSCODE_BADREFERENCENOTALLOWED; +const UA_StatusCode RS_UA_STATUSCODE_BADNODEIDREJECTED = UA_STATUSCODE_BADNODEIDREJECTED; +const UA_StatusCode RS_UA_STATUSCODE_BADNODEIDEXISTS = UA_STATUSCODE_BADNODEIDEXISTS; +const UA_StatusCode RS_UA_STATUSCODE_BADNODECLASSINVALID = UA_STATUSCODE_BADNODECLASSINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADBROWSENAMEINVALID = UA_STATUSCODE_BADBROWSENAMEINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADBROWSENAMEDUPLICATED = UA_STATUSCODE_BADBROWSENAMEDUPLICATED; +const UA_StatusCode RS_UA_STATUSCODE_BADNODEATTRIBUTESINVALID = UA_STATUSCODE_BADNODEATTRIBUTESINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADTYPEDEFINITIONINVALID = UA_STATUSCODE_BADTYPEDEFINITIONINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADSOURCENODEIDINVALID = UA_STATUSCODE_BADSOURCENODEIDINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADTARGETNODEIDINVALID = UA_STATUSCODE_BADTARGETNODEIDINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADDUPLICATEREFERENCENOTALLOWED = UA_STATUSCODE_BADDUPLICATEREFERENCENOTALLOWED; +const UA_StatusCode RS_UA_STATUSCODE_BADINVALIDSELFREFERENCE = UA_STATUSCODE_BADINVALIDSELFREFERENCE; +const UA_StatusCode RS_UA_STATUSCODE_BADREFERENCELOCALONLY = UA_STATUSCODE_BADREFERENCELOCALONLY; +const UA_StatusCode RS_UA_STATUSCODE_BADNODELETERIGHTS = UA_STATUSCODE_BADNODELETERIGHTS; +const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINREFERENCENOTDELETED = UA_STATUSCODE_UNCERTAINREFERENCENOTDELETED; +const UA_StatusCode RS_UA_STATUSCODE_BADSERVERINDEXINVALID = UA_STATUSCODE_BADSERVERINDEXINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADVIEWIDUNKNOWN = UA_STATUSCODE_BADVIEWIDUNKNOWN; +const UA_StatusCode RS_UA_STATUSCODE_BADVIEWTIMESTAMPINVALID = UA_STATUSCODE_BADVIEWTIMESTAMPINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADVIEWPARAMETERMISMATCH = UA_STATUSCODE_BADVIEWPARAMETERMISMATCH; +const UA_StatusCode RS_UA_STATUSCODE_BADVIEWVERSIONINVALID = UA_STATUSCODE_BADVIEWVERSIONINVALID; +const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINNOTALLNODESAVAILABLE = UA_STATUSCODE_UNCERTAINNOTALLNODESAVAILABLE; +const UA_StatusCode RS_UA_STATUSCODE_GOODRESULTSMAYBEINCOMPLETE = UA_STATUSCODE_GOODRESULTSMAYBEINCOMPLETE; +const UA_StatusCode RS_UA_STATUSCODE_BADNOTTYPEDEFINITION = UA_STATUSCODE_BADNOTTYPEDEFINITION; +const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINREFERENCEOUTOFSERVER = UA_STATUSCODE_UNCERTAINREFERENCEOUTOFSERVER; +const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYMATCHES = UA_STATUSCODE_BADTOOMANYMATCHES; +const UA_StatusCode RS_UA_STATUSCODE_BADQUERYTOOCOMPLEX = UA_STATUSCODE_BADQUERYTOOCOMPLEX; +const UA_StatusCode RS_UA_STATUSCODE_BADNOMATCH = UA_STATUSCODE_BADNOMATCH; +const UA_StatusCode RS_UA_STATUSCODE_BADMAXAGEINVALID = UA_STATUSCODE_BADMAXAGEINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADSECURITYMODEINSUFFICIENT = UA_STATUSCODE_BADSECURITYMODEINSUFFICIENT; +const UA_StatusCode RS_UA_STATUSCODE_BADHISTORYOPERATIONINVALID = UA_STATUSCODE_BADHISTORYOPERATIONINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADHISTORYOPERATIONUNSUPPORTED = UA_STATUSCODE_BADHISTORYOPERATIONUNSUPPORTED; +const UA_StatusCode RS_UA_STATUSCODE_BADINVALIDTIMESTAMPARGUMENT = UA_STATUSCODE_BADINVALIDTIMESTAMPARGUMENT; +const UA_StatusCode RS_UA_STATUSCODE_BADWRITENOTSUPPORTED = UA_STATUSCODE_BADWRITENOTSUPPORTED; +const UA_StatusCode RS_UA_STATUSCODE_BADTYPEMISMATCH = UA_STATUSCODE_BADTYPEMISMATCH; +const UA_StatusCode RS_UA_STATUSCODE_BADMETHODINVALID = UA_STATUSCODE_BADMETHODINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADARGUMENTSMISSING = UA_STATUSCODE_BADARGUMENTSMISSING; +const UA_StatusCode RS_UA_STATUSCODE_BADNOTEXECUTABLE = UA_STATUSCODE_BADNOTEXECUTABLE; +const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYSUBSCRIPTIONS = UA_STATUSCODE_BADTOOMANYSUBSCRIPTIONS; +const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYPUBLISHREQUESTS = UA_STATUSCODE_BADTOOMANYPUBLISHREQUESTS; +const UA_StatusCode RS_UA_STATUSCODE_BADNOSUBSCRIPTION = UA_STATUSCODE_BADNOSUBSCRIPTION; +const UA_StatusCode RS_UA_STATUSCODE_BADSEQUENCENUMBERUNKNOWN = UA_STATUSCODE_BADSEQUENCENUMBERUNKNOWN; +const UA_StatusCode RS_UA_STATUSCODE_GOODRETRANSMISSIONQUEUENOTSUPPORTED = UA_STATUSCODE_GOODRETRANSMISSIONQUEUENOTSUPPORTED; +const UA_StatusCode RS_UA_STATUSCODE_BADMESSAGENOTAVAILABLE = UA_STATUSCODE_BADMESSAGENOTAVAILABLE; +const UA_StatusCode RS_UA_STATUSCODE_BADINSUFFICIENTCLIENTPROFILE = UA_STATUSCODE_BADINSUFFICIENTCLIENTPROFILE; +const UA_StatusCode RS_UA_STATUSCODE_BADSTATENOTACTIVE = UA_STATUSCODE_BADSTATENOTACTIVE; +const UA_StatusCode RS_UA_STATUSCODE_BADALREADYEXISTS = UA_STATUSCODE_BADALREADYEXISTS; +const UA_StatusCode RS_UA_STATUSCODE_BADTCPSERVERTOOBUSY = UA_STATUSCODE_BADTCPSERVERTOOBUSY; +const UA_StatusCode RS_UA_STATUSCODE_BADTCPMESSAGETYPEINVALID = UA_STATUSCODE_BADTCPMESSAGETYPEINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADTCPSECURECHANNELUNKNOWN = UA_STATUSCODE_BADTCPSECURECHANNELUNKNOWN; +const UA_StatusCode RS_UA_STATUSCODE_BADTCPMESSAGETOOLARGE = UA_STATUSCODE_BADTCPMESSAGETOOLARGE; +const UA_StatusCode RS_UA_STATUSCODE_BADTCPNOTENOUGHRESOURCES = UA_STATUSCODE_BADTCPNOTENOUGHRESOURCES; +const UA_StatusCode RS_UA_STATUSCODE_BADTCPINTERNALERROR = UA_STATUSCODE_BADTCPINTERNALERROR; +const UA_StatusCode RS_UA_STATUSCODE_BADTCPENDPOINTURLINVALID = UA_STATUSCODE_BADTCPENDPOINTURLINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTINTERRUPTED = UA_STATUSCODE_BADREQUESTINTERRUPTED; +const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTTIMEOUT = UA_STATUSCODE_BADREQUESTTIMEOUT; +const UA_StatusCode RS_UA_STATUSCODE_BADSECURECHANNELCLOSED = UA_STATUSCODE_BADSECURECHANNELCLOSED; +const UA_StatusCode RS_UA_STATUSCODE_BADSECURECHANNELTOKENUNKNOWN = UA_STATUSCODE_BADSECURECHANNELTOKENUNKNOWN; +const UA_StatusCode RS_UA_STATUSCODE_BADSEQUENCENUMBERINVALID = UA_STATUSCODE_BADSEQUENCENUMBERINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADPROTOCOLVERSIONUNSUPPORTED = UA_STATUSCODE_BADPROTOCOLVERSIONUNSUPPORTED; +const UA_StatusCode RS_UA_STATUSCODE_BADCONFIGURATIONERROR = UA_STATUSCODE_BADCONFIGURATIONERROR; +const UA_StatusCode RS_UA_STATUSCODE_BADNOTCONNECTED = UA_STATUSCODE_BADNOTCONNECTED; +const UA_StatusCode RS_UA_STATUSCODE_BADDEVICEFAILURE = UA_STATUSCODE_BADDEVICEFAILURE; +const UA_StatusCode RS_UA_STATUSCODE_BADSENSORFAILURE = UA_STATUSCODE_BADSENSORFAILURE; +const UA_StatusCode RS_UA_STATUSCODE_BADOUTOFSERVICE = UA_STATUSCODE_BADOUTOFSERVICE; +const UA_StatusCode RS_UA_STATUSCODE_BADDEADBANDFILTERINVALID = UA_STATUSCODE_BADDEADBANDFILTERINVALID; +const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINNOCOMMUNICATIONLASTUSABLEVALUE = UA_STATUSCODE_UNCERTAINNOCOMMUNICATIONLASTUSABLEVALUE; +const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINLASTUSABLEVALUE = UA_STATUSCODE_UNCERTAINLASTUSABLEVALUE; +const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINSUBSTITUTEVALUE = UA_STATUSCODE_UNCERTAINSUBSTITUTEVALUE; +const UA_StatusCode RS_UA_STATUSCODE_UNCERTAININITIALVALUE = UA_STATUSCODE_UNCERTAININITIALVALUE; +const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINSENSORNOTACCURATE = UA_STATUSCODE_UNCERTAINSENSORNOTACCURATE; +const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINENGINEERINGUNITSEXCEEDED = UA_STATUSCODE_UNCERTAINENGINEERINGUNITSEXCEEDED; +const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINSUBNORMAL = UA_STATUSCODE_UNCERTAINSUBNORMAL; +const UA_StatusCode RS_UA_STATUSCODE_GOODLOCALOVERRIDE = UA_STATUSCODE_GOODLOCALOVERRIDE; +const UA_StatusCode RS_UA_STATUSCODE_BADREFRESHINPROGRESS = UA_STATUSCODE_BADREFRESHINPROGRESS; +const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONALREADYDISABLED = UA_STATUSCODE_BADCONDITIONALREADYDISABLED; +const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONALREADYENABLED = UA_STATUSCODE_BADCONDITIONALREADYENABLED; +const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONDISABLED = UA_STATUSCODE_BADCONDITIONDISABLED; +const UA_StatusCode RS_UA_STATUSCODE_BADEVENTIDUNKNOWN = UA_STATUSCODE_BADEVENTIDUNKNOWN; +const UA_StatusCode RS_UA_STATUSCODE_BADEVENTNOTACKNOWLEDGEABLE = UA_STATUSCODE_BADEVENTNOTACKNOWLEDGEABLE; +const UA_StatusCode RS_UA_STATUSCODE_BADDIALOGNOTACTIVE = UA_STATUSCODE_BADDIALOGNOTACTIVE; +const UA_StatusCode RS_UA_STATUSCODE_BADDIALOGRESPONSEINVALID = UA_STATUSCODE_BADDIALOGRESPONSEINVALID; +const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONBRANCHALREADYACKED = UA_STATUSCODE_BADCONDITIONBRANCHALREADYACKED; +const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONBRANCHALREADYCONFIRMED = UA_STATUSCODE_BADCONDITIONBRANCHALREADYCONFIRMED; +const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONALREADYSHELVED = UA_STATUSCODE_BADCONDITIONALREADYSHELVED; +const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONNOTSHELVED = UA_STATUSCODE_BADCONDITIONNOTSHELVED; +const UA_StatusCode RS_UA_STATUSCODE_BADSHELVINGTIMEOUTOFRANGE = UA_STATUSCODE_BADSHELVINGTIMEOUTOFRANGE; +const UA_StatusCode RS_UA_STATUSCODE_BADNODATA = UA_STATUSCODE_BADNODATA; +const UA_StatusCode RS_UA_STATUSCODE_BADBOUNDNOTFOUND = UA_STATUSCODE_BADBOUNDNOTFOUND; +const UA_StatusCode RS_UA_STATUSCODE_BADBOUNDNOTSUPPORTED = UA_STATUSCODE_BADBOUNDNOTSUPPORTED; +const UA_StatusCode RS_UA_STATUSCODE_BADDATALOST = UA_STATUSCODE_BADDATALOST; +const UA_StatusCode RS_UA_STATUSCODE_BADDATAUNAVAILABLE = UA_STATUSCODE_BADDATAUNAVAILABLE; +const UA_StatusCode RS_UA_STATUSCODE_BADENTRYEXISTS = UA_STATUSCODE_BADENTRYEXISTS; +const UA_StatusCode RS_UA_STATUSCODE_BADNOENTRYEXISTS = UA_STATUSCODE_BADNOENTRYEXISTS; +const UA_StatusCode RS_UA_STATUSCODE_BADTIMESTAMPNOTSUPPORTED = UA_STATUSCODE_BADTIMESTAMPNOTSUPPORTED; +const UA_StatusCode RS_UA_STATUSCODE_GOODENTRYINSERTED = UA_STATUSCODE_GOODENTRYINSERTED; +const UA_StatusCode RS_UA_STATUSCODE_GOODENTRYREPLACED = UA_STATUSCODE_GOODENTRYREPLACED; +const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINDATASUBNORMAL = UA_STATUSCODE_UNCERTAINDATASUBNORMAL; +const UA_StatusCode RS_UA_STATUSCODE_GOODNODATA = UA_STATUSCODE_GOODNODATA; +const UA_StatusCode RS_UA_STATUSCODE_GOODMOREDATA = UA_STATUSCODE_GOODMOREDATA; +const UA_StatusCode RS_UA_STATUSCODE_BADAGGREGATELISTMISMATCH = UA_STATUSCODE_BADAGGREGATELISTMISMATCH; +const UA_StatusCode RS_UA_STATUSCODE_BADAGGREGATENOTSUPPORTED = UA_STATUSCODE_BADAGGREGATENOTSUPPORTED; +const UA_StatusCode RS_UA_STATUSCODE_BADAGGREGATEINVALIDINPUTS = UA_STATUSCODE_BADAGGREGATEINVALIDINPUTS; +const UA_StatusCode RS_UA_STATUSCODE_BADAGGREGATECONFIGURATIONREJECTED = UA_STATUSCODE_BADAGGREGATECONFIGURATIONREJECTED; +const UA_StatusCode RS_UA_STATUSCODE_GOODDATAIGNORED = UA_STATUSCODE_GOODDATAIGNORED; +const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTNOTALLOWED = UA_STATUSCODE_BADREQUESTNOTALLOWED; +const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTNOTCOMPLETE = UA_STATUSCODE_BADREQUESTNOTCOMPLETE; +const UA_StatusCode RS_UA_STATUSCODE_BADTRANSACTIONPENDING = UA_STATUSCODE_BADTRANSACTIONPENDING; +const UA_StatusCode RS_UA_STATUSCODE_BADTICKETREQUIRED = UA_STATUSCODE_BADTICKETREQUIRED; +const UA_StatusCode RS_UA_STATUSCODE_BADTICKETINVALID = UA_STATUSCODE_BADTICKETINVALID; +const UA_StatusCode RS_UA_STATUSCODE_GOODEDITED = UA_STATUSCODE_GOODEDITED; +const UA_StatusCode RS_UA_STATUSCODE_GOODPOSTACTIONFAILED = UA_STATUSCODE_GOODPOSTACTIONFAILED; +const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINDOMINANTVALUECHANGED = UA_STATUSCODE_UNCERTAINDOMINANTVALUECHANGED; +const UA_StatusCode RS_UA_STATUSCODE_GOODDEPENDENTVALUECHANGED = UA_STATUSCODE_GOODDEPENDENTVALUECHANGED; +const UA_StatusCode RS_UA_STATUSCODE_BADDOMINANTVALUECHANGED = UA_STATUSCODE_BADDOMINANTVALUECHANGED; +const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINDEPENDENTVALUECHANGED = UA_STATUSCODE_UNCERTAINDEPENDENTVALUECHANGED; +const UA_StatusCode RS_UA_STATUSCODE_BADDEPENDENTVALUECHANGED = UA_STATUSCODE_BADDEPENDENTVALUECHANGED; +const UA_StatusCode RS_UA_STATUSCODE_GOODEDITED_DEPENDENTVALUECHANGED = UA_STATUSCODE_GOODEDITED_DEPENDENTVALUECHANGED; +const UA_StatusCode RS_UA_STATUSCODE_GOODEDITED_DOMINANTVALUECHANGED = UA_STATUSCODE_GOODEDITED_DOMINANTVALUECHANGED; +const UA_StatusCode RS_UA_STATUSCODE_GOODEDITED_DOMINANTVALUECHANGED_DEPENDENTVALUECHANGED = UA_STATUSCODE_GOODEDITED_DOMINANTVALUECHANGED_DEPENDENTVALUECHANGED; +const UA_StatusCode RS_UA_STATUSCODE_BADEDITED_OUTOFRANGE = UA_STATUSCODE_BADEDITED_OUTOFRANGE; +const UA_StatusCode RS_UA_STATUSCODE_BADINITIALVALUE_OUTOFRANGE = UA_STATUSCODE_BADINITIALVALUE_OUTOFRANGE; +const UA_StatusCode RS_UA_STATUSCODE_BADOUTOFRANGE_DOMINANTVALUECHANGED = UA_STATUSCODE_BADOUTOFRANGE_DOMINANTVALUECHANGED; +const UA_StatusCode RS_UA_STATUSCODE_BADEDITED_OUTOFRANGE_DOMINANTVALUECHANGED = UA_STATUSCODE_BADEDITED_OUTOFRANGE_DOMINANTVALUECHANGED; +const UA_StatusCode RS_UA_STATUSCODE_BADOUTOFRANGE_DOMINANTVALUECHANGED_DEPENDENTVALUECHANGED = UA_STATUSCODE_BADOUTOFRANGE_DOMINANTVALUECHANGED_DEPENDENTVALUECHANGED; +const UA_StatusCode RS_UA_STATUSCODE_BADEDITED_OUTOFRANGE_DOMINANTVALUECHANGED_DEPENDENTVALUECHANGED = UA_STATUSCODE_BADEDITED_OUTOFRANGE_DOMINANTVALUECHANGED_DEPENDENTVALUECHANGED; +const UA_StatusCode RS_UA_STATUSCODE_GOODCOMMUNICATIONEVENT = UA_STATUSCODE_GOODCOMMUNICATIONEVENT; +const UA_StatusCode RS_UA_STATUSCODE_GOODSHUTDOWNEVENT = UA_STATUSCODE_GOODSHUTDOWNEVENT; +const UA_StatusCode RS_UA_STATUSCODE_GOODCALLAGAIN = UA_STATUSCODE_GOODCALLAGAIN; +const UA_StatusCode RS_UA_STATUSCODE_GOODNONCRITICALTIMEOUT = UA_STATUSCODE_GOODNONCRITICALTIMEOUT; +const UA_StatusCode RS_UA_STATUSCODE_BADINVALIDARGUMENT = UA_STATUSCODE_BADINVALIDARGUMENT; +const UA_StatusCode RS_UA_STATUSCODE_BADCONNECTIONREJECTED = UA_STATUSCODE_BADCONNECTIONREJECTED; +const UA_StatusCode RS_UA_STATUSCODE_BADDISCONNECT = UA_STATUSCODE_BADDISCONNECT; +const UA_StatusCode RS_UA_STATUSCODE_BADCONNECTIONCLOSED = UA_STATUSCODE_BADCONNECTIONCLOSED; +const UA_StatusCode RS_UA_STATUSCODE_BADINVALIDSTATE = UA_STATUSCODE_BADINVALIDSTATE; +const UA_StatusCode RS_UA_STATUSCODE_BADENDOFSTREAM = UA_STATUSCODE_BADENDOFSTREAM; +const UA_StatusCode RS_UA_STATUSCODE_BADNODATAAVAILABLE = UA_STATUSCODE_BADNODATAAVAILABLE; +const UA_StatusCode RS_UA_STATUSCODE_BADWAITINGFORRESPONSE = UA_STATUSCODE_BADWAITINGFORRESPONSE; +const UA_StatusCode RS_UA_STATUSCODE_BADOPERATIONABANDONED = UA_STATUSCODE_BADOPERATIONABANDONED; +const UA_StatusCode RS_UA_STATUSCODE_BADEXPECTEDSTREAMTOBLOCK = UA_STATUSCODE_BADEXPECTEDSTREAMTOBLOCK; +const UA_StatusCode RS_UA_STATUSCODE_BADWOULDBLOCK = UA_STATUSCODE_BADWOULDBLOCK; +const UA_StatusCode RS_UA_STATUSCODE_BADSYNTAXERROR = UA_STATUSCODE_BADSYNTAXERROR; +const UA_StatusCode RS_UA_STATUSCODE_BADMAXCONNECTIONSREACHED = UA_STATUSCODE_BADMAXCONNECTIONSREACHED; From 4e6df6c5c79217dbe1c5c9ca8f5ec11011c75def Mon Sep 17 00:00:00 2001 From: Uwe Klotz Date: Sun, 15 Mar 2026 15:20:55 +0100 Subject: [PATCH 08/15] Upgrade to open62541 v1.5.3 (#91) --- .pre-commit-config.yaml | 4 ++-- CHANGELOG.md | 2 +- Cargo.lock | 12 ++++++------ Cargo.toml | 2 +- open62541 | 2 +- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 59ed5a9..f9ccb97 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -26,12 +26,12 @@ repos: hooks: - id: markdownlint-cli2 - repo: https://github.com/codespell-project/codespell - rev: v2.4.1 + rev: v2.4.2 hooks: - id: codespell args: [--ignore-words=.codespellignore] - repo: https://github.com/sirosen/check-jsonschema - rev: 0.36.2 + rev: 0.37.0 hooks: - id: check-github-actions - id: check-github-workflows diff --git a/CHANGELOG.md b/CHANGELOG.md index 7055072..d886bfb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,7 +10,7 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ### Changed - Breaking: Upgrade to open62541 version - [1.5.2](https://github.com/open62541/open62541/releases/tag/v1.5.2). + [1.5.3](https://github.com/open62541/open62541/releases/tag/v1.5.3). ## [0.5.1] - 2025-10-21 diff --git a/Cargo.lock b/Cargo.lock index 52c314f..2e07f4f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -39,9 +39,9 @@ checksum = "843867be96c8daad0d758b57df9392b6d8d271134fce549de6ce169ff98a92af" [[package]] name = "cc" -version = "1.2.56" +version = "1.2.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aebf35691d1bfb0ac386a69bac2fde4dd276fb618cf8bf4f5318fe285e821bb2" +checksum = "7a0dd1ca384932ff3641c8718a02769f1698e7563dc6974ffd03346116310423" dependencies = [ "find-msvc-tools", "shlex", @@ -111,9 +111,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.182" +version = "0.2.183" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6800badb6cb2082ffd7b6a67e6125bb39f18782f793520caee8cb8846be06112" +checksum = "b5b646652bf6661599e1da8901b3b9522896f01e736bad5f723fe7a3a27f899d" [[package]] name = "libloading" @@ -184,9 +184,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.44" +version = "1.0.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21b2ebcf727b7760c461f091f9f0f539b77b8e87f2fd88131e7f1b433b3cece4" +checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924" dependencies = [ "proc-macro2", ] diff --git a/Cargo.toml b/Cargo.toml index 22c51af..8019b2f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -59,7 +59,7 @@ include = [ [build-dependencies] bindgen = { version = "0.72.1" } -cc = "1.2.56" +cc = "1.2.57" cmake = "0.1.57" version_check = "0.9.5" diff --git a/open62541 b/open62541 index 12ae25e..0871415 160000 --- a/open62541 +++ b/open62541 @@ -1 +1 @@ -Subproject commit 12ae25e5f3eb874c70c9bf6ce619e1546fc994d6 +Subproject commit 0871415294fd5cfb0cc6b989ea4ebab047378181 From dd4b0e2c36ca61ce8a434f112df475cfc0f11885 Mon Sep 17 00:00:00 2001 From: Uwe Klotz Date: Mon, 16 Mar 2026 12:06:12 +0100 Subject: [PATCH 09/15] Merge main into open62541-1.5 (#94) Co-authored-by: Sebastian Goll --- CHANGELOG.md | 26 +++++++++++++++++++++++++- Cargo.lock | 2 +- Cargo.toml | 2 +- build.rs | 4 ++-- 4 files changed, 29 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d886bfb..3655554 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,27 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). - Breaking: Upgrade to open62541 version [1.5.3](https://github.com/open62541/open62541/releases/tag/v1.5.3). +## [0.5.4] - 2026-03-16 + +### Fixed + +- Disable LTO on `x86_64-unknown-linux-gnu` to fix unresolved symbols when linking with `lld` + (default in Rust 1.90). This didn't work as expected since v0.5.0. + +## [0.5.3] - 2026-02-23 + +### Changed + +- Upgrade to open62541 version + [1.4.16](https://github.com/open62541/open62541/releases/tag/v1.4.16). + +## [0.5.2] - 2026-02-17 + +### Changed + +- Upgrade to open62541 version + [1.4.15](https://github.com/open62541/open62541/releases/tag/v1.4.15). + ## [0.5.1] - 2025-10-21 ### Changed @@ -262,7 +283,10 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). - First public release. -[Unreleased]: https://github.com/HMIProject/open62541-sys/compare/v0.5.1...HEAD +[Unreleased]: https://github.com/HMIProject/open62541-sys/compare/v0.5.4...HEAD +[0.5.4]: https://github.com/HMIProject/open62541-sys/compare/v0.5.3...v0.5.4 +[0.5.3]: https://github.com/HMIProject/open62541-sys/compare/v0.5.2...v0.5.3 +[0.5.2]: https://github.com/HMIProject/open62541-sys/compare/v0.5.1...v0.5.2 [0.5.1]: https://github.com/HMIProject/open62541-sys/compare/v0.5.0...v0.5.1 [0.5.0]: https://github.com/HMIProject/open62541-sys/compare/v0.4.18...v0.5.0 [0.4.18]: https://github.com/HMIProject/open62541-sys/compare/v0.4.17...v0.4.18 diff --git a/Cargo.lock b/Cargo.lock index 2e07f4f..0a0ae73 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -155,7 +155,7 @@ dependencies = [ [[package]] name = "open62541-sys" -version = "0.5.1" +version = "0.5.4" dependencies = [ "bindgen", "cc", diff --git a/Cargo.toml b/Cargo.toml index 8019b2f..111ebec 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "open62541-sys" -version = "0.5.1" +version = "0.5.4" authors = ["HMI Project"] edition = "2024" # Keep MSRV in sync with `test.yaml`/`build.rs`. Use versions that are at least 6 months old. diff --git a/build.rs b/build.rs index a76e31c..023eee1 100644 --- a/build.rs +++ b/build.rs @@ -271,8 +271,8 @@ fn build_open62541(src: PathBuf, encryption: Option<&EncryptionDst>) -> PathBuf .cflag(format!("-idirafter/usr/include/{arch}-linux-gnu")); } - if matches!(env::var("CARGO_BUILD_TARGET"), Ok(env) if env == "x86_64-unknown-linux-gnu") { - // Disable LTO on for x86_64-unknown-linux-gnu. + if matches!(env::var("TARGET"), Ok(env) if env == "x86_64-unknown-linux-gnu") { + // Disable LTO for x86_64-unknown-linux-gnu. // // Rust projects may use different linkers on x86_64-unknown-linux-gnu. // Either BFD or LLD. The latter is the default linker since Rust 1.90. From 81bab141e0ea03ab0bd8b9de3e9bf546a2c2b577 Mon Sep 17 00:00:00 2001 From: Uwe Klotz Date: Thu, 19 Mar 2026 10:35:52 +0100 Subject: [PATCH 10/15] Fix duplicate symbols in downstream crates (#95) Replace `const` with `static const` for internal linkage. > rust-lld: error: duplicate symbol: RS_UA_STATUSCODE_BADOUTOFMEMORY > defined at wrapper.h:32 (/home/runner/.cargo/git/checkouts/open62541-sys-f44ba0cbd54aa9ea/dd4b0e2/wrapper.h:32) --- wrapper.h | 502 +++++++++++++++++++++++++++--------------------------- 1 file changed, 251 insertions(+), 251 deletions(-) diff --git a/wrapper.h b/wrapper.h index 83f558d..885e70e 100644 --- a/wrapper.h +++ b/wrapper.h @@ -24,254 +24,254 @@ extern const void *const RS_UA_EMPTY_ARRAY_SENTINEL; // bindgen has problems with trivially defined macro constants, for some reason. // The following list has been taken from `statuscodes.c`. -const UA_StatusCode RS_UA_STATUSCODE_GOOD = UA_STATUSCODE_GOOD; -const UA_StatusCode RS_UA_STATUSCODE_UNCERTAIN = UA_STATUSCODE_UNCERTAIN; -const UA_StatusCode RS_UA_STATUSCODE_BAD = UA_STATUSCODE_BAD; -const UA_StatusCode RS_UA_STATUSCODE_BADUNEXPECTEDERROR = UA_STATUSCODE_BADUNEXPECTEDERROR; -const UA_StatusCode RS_UA_STATUSCODE_BADINTERNALERROR = UA_STATUSCODE_BADINTERNALERROR; -const UA_StatusCode RS_UA_STATUSCODE_BADOUTOFMEMORY = UA_STATUSCODE_BADOUTOFMEMORY; -const UA_StatusCode RS_UA_STATUSCODE_BADRESOURCEUNAVAILABLE = UA_STATUSCODE_BADRESOURCEUNAVAILABLE; -const UA_StatusCode RS_UA_STATUSCODE_BADCOMMUNICATIONERROR = UA_STATUSCODE_BADCOMMUNICATIONERROR; -const UA_StatusCode RS_UA_STATUSCODE_BADENCODINGERROR = UA_STATUSCODE_BADENCODINGERROR; -const UA_StatusCode RS_UA_STATUSCODE_BADDECODINGERROR = UA_STATUSCODE_BADDECODINGERROR; -const UA_StatusCode RS_UA_STATUSCODE_BADENCODINGLIMITSEXCEEDED = UA_STATUSCODE_BADENCODINGLIMITSEXCEEDED; -const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTTOOLARGE = UA_STATUSCODE_BADREQUESTTOOLARGE; -const UA_StatusCode RS_UA_STATUSCODE_BADRESPONSETOOLARGE = UA_STATUSCODE_BADRESPONSETOOLARGE; -const UA_StatusCode RS_UA_STATUSCODE_BADUNKNOWNRESPONSE = UA_STATUSCODE_BADUNKNOWNRESPONSE; -const UA_StatusCode RS_UA_STATUSCODE_BADTIMEOUT = UA_STATUSCODE_BADTIMEOUT; -const UA_StatusCode RS_UA_STATUSCODE_BADSERVICEUNSUPPORTED = UA_STATUSCODE_BADSERVICEUNSUPPORTED; -const UA_StatusCode RS_UA_STATUSCODE_BADSHUTDOWN = UA_STATUSCODE_BADSHUTDOWN; -const UA_StatusCode RS_UA_STATUSCODE_BADSERVERNOTCONNECTED = UA_STATUSCODE_BADSERVERNOTCONNECTED; -const UA_StatusCode RS_UA_STATUSCODE_BADSERVERHALTED = UA_STATUSCODE_BADSERVERHALTED; -const UA_StatusCode RS_UA_STATUSCODE_BADNOTHINGTODO = UA_STATUSCODE_BADNOTHINGTODO; -const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYOPERATIONS = UA_STATUSCODE_BADTOOMANYOPERATIONS; -const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYMONITOREDITEMS = UA_STATUSCODE_BADTOOMANYMONITOREDITEMS; -const UA_StatusCode RS_UA_STATUSCODE_BADDATATYPEIDUNKNOWN = UA_STATUSCODE_BADDATATYPEIDUNKNOWN; -const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEINVALID = UA_STATUSCODE_BADCERTIFICATEINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADSECURITYCHECKSFAILED = UA_STATUSCODE_BADSECURITYCHECKSFAILED; -const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEPOLICYCHECKFAILED = UA_STATUSCODE_BADCERTIFICATEPOLICYCHECKFAILED; -const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATETIMEINVALID = UA_STATUSCODE_BADCERTIFICATETIMEINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEISSUERTIMEINVALID = UA_STATUSCODE_BADCERTIFICATEISSUERTIMEINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEHOSTNAMEINVALID = UA_STATUSCODE_BADCERTIFICATEHOSTNAMEINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEURIINVALID = UA_STATUSCODE_BADCERTIFICATEURIINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEUSENOTALLOWED = UA_STATUSCODE_BADCERTIFICATEUSENOTALLOWED; -const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEISSUERUSENOTALLOWED = UA_STATUSCODE_BADCERTIFICATEISSUERUSENOTALLOWED; -const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEUNTRUSTED = UA_STATUSCODE_BADCERTIFICATEUNTRUSTED; -const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEREVOCATIONUNKNOWN = UA_STATUSCODE_BADCERTIFICATEREVOCATIONUNKNOWN; -const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEISSUERREVOCATIONUNKNOWN = UA_STATUSCODE_BADCERTIFICATEISSUERREVOCATIONUNKNOWN; -const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEREVOKED = UA_STATUSCODE_BADCERTIFICATEREVOKED; -const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEISSUERREVOKED = UA_STATUSCODE_BADCERTIFICATEISSUERREVOKED; -const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATECHAININCOMPLETE = UA_STATUSCODE_BADCERTIFICATECHAININCOMPLETE; -const UA_StatusCode RS_UA_STATUSCODE_BADUSERACCESSDENIED = UA_STATUSCODE_BADUSERACCESSDENIED; -const UA_StatusCode RS_UA_STATUSCODE_BADIDENTITYTOKENINVALID = UA_STATUSCODE_BADIDENTITYTOKENINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADIDENTITYTOKENREJECTED = UA_STATUSCODE_BADIDENTITYTOKENREJECTED; -const UA_StatusCode RS_UA_STATUSCODE_BADSECURECHANNELIDINVALID = UA_STATUSCODE_BADSECURECHANNELIDINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADINVALIDTIMESTAMP = UA_STATUSCODE_BADINVALIDTIMESTAMP; -const UA_StatusCode RS_UA_STATUSCODE_BADNONCEINVALID = UA_STATUSCODE_BADNONCEINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADSESSIONIDINVALID = UA_STATUSCODE_BADSESSIONIDINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADSESSIONCLOSED = UA_STATUSCODE_BADSESSIONCLOSED; -const UA_StatusCode RS_UA_STATUSCODE_BADSESSIONNOTACTIVATED = UA_STATUSCODE_BADSESSIONNOTACTIVATED; -const UA_StatusCode RS_UA_STATUSCODE_BADSUBSCRIPTIONIDINVALID = UA_STATUSCODE_BADSUBSCRIPTIONIDINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTHEADERINVALID = UA_STATUSCODE_BADREQUESTHEADERINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADTIMESTAMPSTORETURNINVALID = UA_STATUSCODE_BADTIMESTAMPSTORETURNINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTCANCELLEDBYCLIENT = UA_STATUSCODE_BADREQUESTCANCELLEDBYCLIENT; -const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYARGUMENTS = UA_STATUSCODE_BADTOOMANYARGUMENTS; -const UA_StatusCode RS_UA_STATUSCODE_BADLICENSEEXPIRED = UA_STATUSCODE_BADLICENSEEXPIRED; -const UA_StatusCode RS_UA_STATUSCODE_BADLICENSELIMITSEXCEEDED = UA_STATUSCODE_BADLICENSELIMITSEXCEEDED; -const UA_StatusCode RS_UA_STATUSCODE_BADLICENSENOTAVAILABLE = UA_STATUSCODE_BADLICENSENOTAVAILABLE; -const UA_StatusCode RS_UA_STATUSCODE_GOODSUBSCRIPTIONTRANSFERRED = UA_STATUSCODE_GOODSUBSCRIPTIONTRANSFERRED; -const UA_StatusCode RS_UA_STATUSCODE_GOODCOMPLETESASYNCHRONOUSLY = UA_STATUSCODE_GOODCOMPLETESASYNCHRONOUSLY; -const UA_StatusCode RS_UA_STATUSCODE_GOODOVERLOAD = UA_STATUSCODE_GOODOVERLOAD; -const UA_StatusCode RS_UA_STATUSCODE_GOODCLAMPED = UA_STATUSCODE_GOODCLAMPED; -const UA_StatusCode RS_UA_STATUSCODE_BADNOCOMMUNICATION = UA_STATUSCODE_BADNOCOMMUNICATION; -const UA_StatusCode RS_UA_STATUSCODE_BADWAITINGFORINITIALDATA = UA_STATUSCODE_BADWAITINGFORINITIALDATA; -const UA_StatusCode RS_UA_STATUSCODE_BADNODEIDINVALID = UA_STATUSCODE_BADNODEIDINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADNODEIDUNKNOWN = UA_STATUSCODE_BADNODEIDUNKNOWN; -const UA_StatusCode RS_UA_STATUSCODE_BADATTRIBUTEIDINVALID = UA_STATUSCODE_BADATTRIBUTEIDINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADINDEXRANGEINVALID = UA_STATUSCODE_BADINDEXRANGEINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADINDEXRANGENODATA = UA_STATUSCODE_BADINDEXRANGENODATA; -const UA_StatusCode RS_UA_STATUSCODE_BADDATAENCODINGINVALID = UA_STATUSCODE_BADDATAENCODINGINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADDATAENCODINGUNSUPPORTED = UA_STATUSCODE_BADDATAENCODINGUNSUPPORTED; -const UA_StatusCode RS_UA_STATUSCODE_BADNOTREADABLE = UA_STATUSCODE_BADNOTREADABLE; -const UA_StatusCode RS_UA_STATUSCODE_BADNOTWRITABLE = UA_STATUSCODE_BADNOTWRITABLE; -const UA_StatusCode RS_UA_STATUSCODE_BADOUTOFRANGE = UA_STATUSCODE_BADOUTOFRANGE; -const UA_StatusCode RS_UA_STATUSCODE_BADNOTSUPPORTED = UA_STATUSCODE_BADNOTSUPPORTED; -const UA_StatusCode RS_UA_STATUSCODE_BADNOTFOUND = UA_STATUSCODE_BADNOTFOUND; -const UA_StatusCode RS_UA_STATUSCODE_BADOBJECTDELETED = UA_STATUSCODE_BADOBJECTDELETED; -const UA_StatusCode RS_UA_STATUSCODE_BADNOTIMPLEMENTED = UA_STATUSCODE_BADNOTIMPLEMENTED; -const UA_StatusCode RS_UA_STATUSCODE_BADMONITORINGMODEINVALID = UA_STATUSCODE_BADMONITORINGMODEINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADMONITOREDITEMIDINVALID = UA_STATUSCODE_BADMONITOREDITEMIDINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADMONITOREDITEMFILTERINVALID = UA_STATUSCODE_BADMONITOREDITEMFILTERINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADMONITOREDITEMFILTERUNSUPPORTED = UA_STATUSCODE_BADMONITOREDITEMFILTERUNSUPPORTED; -const UA_StatusCode RS_UA_STATUSCODE_BADFILTERNOTALLOWED = UA_STATUSCODE_BADFILTERNOTALLOWED; -const UA_StatusCode RS_UA_STATUSCODE_BADSTRUCTUREMISSING = UA_STATUSCODE_BADSTRUCTUREMISSING; -const UA_StatusCode RS_UA_STATUSCODE_BADEVENTFILTERINVALID = UA_STATUSCODE_BADEVENTFILTERINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADCONTENTFILTERINVALID = UA_STATUSCODE_BADCONTENTFILTERINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADFILTEROPERATORINVALID = UA_STATUSCODE_BADFILTEROPERATORINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADFILTEROPERATORUNSUPPORTED = UA_STATUSCODE_BADFILTEROPERATORUNSUPPORTED; -const UA_StatusCode RS_UA_STATUSCODE_BADFILTEROPERANDCOUNTMISMATCH = UA_STATUSCODE_BADFILTEROPERANDCOUNTMISMATCH; -const UA_StatusCode RS_UA_STATUSCODE_BADFILTEROPERANDINVALID = UA_STATUSCODE_BADFILTEROPERANDINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADFILTERELEMENTINVALID = UA_STATUSCODE_BADFILTERELEMENTINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADFILTERLITERALINVALID = UA_STATUSCODE_BADFILTERLITERALINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADCONTINUATIONPOINTINVALID = UA_STATUSCODE_BADCONTINUATIONPOINTINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADNOCONTINUATIONPOINTS = UA_STATUSCODE_BADNOCONTINUATIONPOINTS; -const UA_StatusCode RS_UA_STATUSCODE_BADREFERENCETYPEIDINVALID = UA_STATUSCODE_BADREFERENCETYPEIDINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADBROWSEDIRECTIONINVALID = UA_STATUSCODE_BADBROWSEDIRECTIONINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADNODENOTINVIEW = UA_STATUSCODE_BADNODENOTINVIEW; -const UA_StatusCode RS_UA_STATUSCODE_BADNUMERICOVERFLOW = UA_STATUSCODE_BADNUMERICOVERFLOW; -const UA_StatusCode RS_UA_STATUSCODE_BADSERVERURIINVALID = UA_STATUSCODE_BADSERVERURIINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADSERVERNAMEMISSING = UA_STATUSCODE_BADSERVERNAMEMISSING; -const UA_StatusCode RS_UA_STATUSCODE_BADDISCOVERYURLMISSING = UA_STATUSCODE_BADDISCOVERYURLMISSING; -const UA_StatusCode RS_UA_STATUSCODE_BADSEMAPHOREFILEMISSING = UA_STATUSCODE_BADSEMAPHOREFILEMISSING; -const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTTYPEINVALID = UA_STATUSCODE_BADREQUESTTYPEINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADSECURITYMODEREJECTED = UA_STATUSCODE_BADSECURITYMODEREJECTED; -const UA_StatusCode RS_UA_STATUSCODE_BADSECURITYPOLICYREJECTED = UA_STATUSCODE_BADSECURITYPOLICYREJECTED; -const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYSESSIONS = UA_STATUSCODE_BADTOOMANYSESSIONS; -const UA_StatusCode RS_UA_STATUSCODE_BADUSERSIGNATUREINVALID = UA_STATUSCODE_BADUSERSIGNATUREINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADAPPLICATIONSIGNATUREINVALID = UA_STATUSCODE_BADAPPLICATIONSIGNATUREINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADNOVALIDCERTIFICATES = UA_STATUSCODE_BADNOVALIDCERTIFICATES; -const UA_StatusCode RS_UA_STATUSCODE_BADIDENTITYCHANGENOTSUPPORTED = UA_STATUSCODE_BADIDENTITYCHANGENOTSUPPORTED; -const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTCANCELLEDBYREQUEST = UA_STATUSCODE_BADREQUESTCANCELLEDBYREQUEST; -const UA_StatusCode RS_UA_STATUSCODE_BADPARENTNODEIDINVALID = UA_STATUSCODE_BADPARENTNODEIDINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADREFERENCENOTALLOWED = UA_STATUSCODE_BADREFERENCENOTALLOWED; -const UA_StatusCode RS_UA_STATUSCODE_BADNODEIDREJECTED = UA_STATUSCODE_BADNODEIDREJECTED; -const UA_StatusCode RS_UA_STATUSCODE_BADNODEIDEXISTS = UA_STATUSCODE_BADNODEIDEXISTS; -const UA_StatusCode RS_UA_STATUSCODE_BADNODECLASSINVALID = UA_STATUSCODE_BADNODECLASSINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADBROWSENAMEINVALID = UA_STATUSCODE_BADBROWSENAMEINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADBROWSENAMEDUPLICATED = UA_STATUSCODE_BADBROWSENAMEDUPLICATED; -const UA_StatusCode RS_UA_STATUSCODE_BADNODEATTRIBUTESINVALID = UA_STATUSCODE_BADNODEATTRIBUTESINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADTYPEDEFINITIONINVALID = UA_STATUSCODE_BADTYPEDEFINITIONINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADSOURCENODEIDINVALID = UA_STATUSCODE_BADSOURCENODEIDINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADTARGETNODEIDINVALID = UA_STATUSCODE_BADTARGETNODEIDINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADDUPLICATEREFERENCENOTALLOWED = UA_STATUSCODE_BADDUPLICATEREFERENCENOTALLOWED; -const UA_StatusCode RS_UA_STATUSCODE_BADINVALIDSELFREFERENCE = UA_STATUSCODE_BADINVALIDSELFREFERENCE; -const UA_StatusCode RS_UA_STATUSCODE_BADREFERENCELOCALONLY = UA_STATUSCODE_BADREFERENCELOCALONLY; -const UA_StatusCode RS_UA_STATUSCODE_BADNODELETERIGHTS = UA_STATUSCODE_BADNODELETERIGHTS; -const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINREFERENCENOTDELETED = UA_STATUSCODE_UNCERTAINREFERENCENOTDELETED; -const UA_StatusCode RS_UA_STATUSCODE_BADSERVERINDEXINVALID = UA_STATUSCODE_BADSERVERINDEXINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADVIEWIDUNKNOWN = UA_STATUSCODE_BADVIEWIDUNKNOWN; -const UA_StatusCode RS_UA_STATUSCODE_BADVIEWTIMESTAMPINVALID = UA_STATUSCODE_BADVIEWTIMESTAMPINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADVIEWPARAMETERMISMATCH = UA_STATUSCODE_BADVIEWPARAMETERMISMATCH; -const UA_StatusCode RS_UA_STATUSCODE_BADVIEWVERSIONINVALID = UA_STATUSCODE_BADVIEWVERSIONINVALID; -const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINNOTALLNODESAVAILABLE = UA_STATUSCODE_UNCERTAINNOTALLNODESAVAILABLE; -const UA_StatusCode RS_UA_STATUSCODE_GOODRESULTSMAYBEINCOMPLETE = UA_STATUSCODE_GOODRESULTSMAYBEINCOMPLETE; -const UA_StatusCode RS_UA_STATUSCODE_BADNOTTYPEDEFINITION = UA_STATUSCODE_BADNOTTYPEDEFINITION; -const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINREFERENCEOUTOFSERVER = UA_STATUSCODE_UNCERTAINREFERENCEOUTOFSERVER; -const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYMATCHES = UA_STATUSCODE_BADTOOMANYMATCHES; -const UA_StatusCode RS_UA_STATUSCODE_BADQUERYTOOCOMPLEX = UA_STATUSCODE_BADQUERYTOOCOMPLEX; -const UA_StatusCode RS_UA_STATUSCODE_BADNOMATCH = UA_STATUSCODE_BADNOMATCH; -const UA_StatusCode RS_UA_STATUSCODE_BADMAXAGEINVALID = UA_STATUSCODE_BADMAXAGEINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADSECURITYMODEINSUFFICIENT = UA_STATUSCODE_BADSECURITYMODEINSUFFICIENT; -const UA_StatusCode RS_UA_STATUSCODE_BADHISTORYOPERATIONINVALID = UA_STATUSCODE_BADHISTORYOPERATIONINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADHISTORYOPERATIONUNSUPPORTED = UA_STATUSCODE_BADHISTORYOPERATIONUNSUPPORTED; -const UA_StatusCode RS_UA_STATUSCODE_BADINVALIDTIMESTAMPARGUMENT = UA_STATUSCODE_BADINVALIDTIMESTAMPARGUMENT; -const UA_StatusCode RS_UA_STATUSCODE_BADWRITENOTSUPPORTED = UA_STATUSCODE_BADWRITENOTSUPPORTED; -const UA_StatusCode RS_UA_STATUSCODE_BADTYPEMISMATCH = UA_STATUSCODE_BADTYPEMISMATCH; -const UA_StatusCode RS_UA_STATUSCODE_BADMETHODINVALID = UA_STATUSCODE_BADMETHODINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADARGUMENTSMISSING = UA_STATUSCODE_BADARGUMENTSMISSING; -const UA_StatusCode RS_UA_STATUSCODE_BADNOTEXECUTABLE = UA_STATUSCODE_BADNOTEXECUTABLE; -const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYSUBSCRIPTIONS = UA_STATUSCODE_BADTOOMANYSUBSCRIPTIONS; -const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYPUBLISHREQUESTS = UA_STATUSCODE_BADTOOMANYPUBLISHREQUESTS; -const UA_StatusCode RS_UA_STATUSCODE_BADNOSUBSCRIPTION = UA_STATUSCODE_BADNOSUBSCRIPTION; -const UA_StatusCode RS_UA_STATUSCODE_BADSEQUENCENUMBERUNKNOWN = UA_STATUSCODE_BADSEQUENCENUMBERUNKNOWN; -const UA_StatusCode RS_UA_STATUSCODE_GOODRETRANSMISSIONQUEUENOTSUPPORTED = UA_STATUSCODE_GOODRETRANSMISSIONQUEUENOTSUPPORTED; -const UA_StatusCode RS_UA_STATUSCODE_BADMESSAGENOTAVAILABLE = UA_STATUSCODE_BADMESSAGENOTAVAILABLE; -const UA_StatusCode RS_UA_STATUSCODE_BADINSUFFICIENTCLIENTPROFILE = UA_STATUSCODE_BADINSUFFICIENTCLIENTPROFILE; -const UA_StatusCode RS_UA_STATUSCODE_BADSTATENOTACTIVE = UA_STATUSCODE_BADSTATENOTACTIVE; -const UA_StatusCode RS_UA_STATUSCODE_BADALREADYEXISTS = UA_STATUSCODE_BADALREADYEXISTS; -const UA_StatusCode RS_UA_STATUSCODE_BADTCPSERVERTOOBUSY = UA_STATUSCODE_BADTCPSERVERTOOBUSY; -const UA_StatusCode RS_UA_STATUSCODE_BADTCPMESSAGETYPEINVALID = UA_STATUSCODE_BADTCPMESSAGETYPEINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADTCPSECURECHANNELUNKNOWN = UA_STATUSCODE_BADTCPSECURECHANNELUNKNOWN; -const UA_StatusCode RS_UA_STATUSCODE_BADTCPMESSAGETOOLARGE = UA_STATUSCODE_BADTCPMESSAGETOOLARGE; -const UA_StatusCode RS_UA_STATUSCODE_BADTCPNOTENOUGHRESOURCES = UA_STATUSCODE_BADTCPNOTENOUGHRESOURCES; -const UA_StatusCode RS_UA_STATUSCODE_BADTCPINTERNALERROR = UA_STATUSCODE_BADTCPINTERNALERROR; -const UA_StatusCode RS_UA_STATUSCODE_BADTCPENDPOINTURLINVALID = UA_STATUSCODE_BADTCPENDPOINTURLINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTINTERRUPTED = UA_STATUSCODE_BADREQUESTINTERRUPTED; -const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTTIMEOUT = UA_STATUSCODE_BADREQUESTTIMEOUT; -const UA_StatusCode RS_UA_STATUSCODE_BADSECURECHANNELCLOSED = UA_STATUSCODE_BADSECURECHANNELCLOSED; -const UA_StatusCode RS_UA_STATUSCODE_BADSECURECHANNELTOKENUNKNOWN = UA_STATUSCODE_BADSECURECHANNELTOKENUNKNOWN; -const UA_StatusCode RS_UA_STATUSCODE_BADSEQUENCENUMBERINVALID = UA_STATUSCODE_BADSEQUENCENUMBERINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADPROTOCOLVERSIONUNSUPPORTED = UA_STATUSCODE_BADPROTOCOLVERSIONUNSUPPORTED; -const UA_StatusCode RS_UA_STATUSCODE_BADCONFIGURATIONERROR = UA_STATUSCODE_BADCONFIGURATIONERROR; -const UA_StatusCode RS_UA_STATUSCODE_BADNOTCONNECTED = UA_STATUSCODE_BADNOTCONNECTED; -const UA_StatusCode RS_UA_STATUSCODE_BADDEVICEFAILURE = UA_STATUSCODE_BADDEVICEFAILURE; -const UA_StatusCode RS_UA_STATUSCODE_BADSENSORFAILURE = UA_STATUSCODE_BADSENSORFAILURE; -const UA_StatusCode RS_UA_STATUSCODE_BADOUTOFSERVICE = UA_STATUSCODE_BADOUTOFSERVICE; -const UA_StatusCode RS_UA_STATUSCODE_BADDEADBANDFILTERINVALID = UA_STATUSCODE_BADDEADBANDFILTERINVALID; -const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINNOCOMMUNICATIONLASTUSABLEVALUE = UA_STATUSCODE_UNCERTAINNOCOMMUNICATIONLASTUSABLEVALUE; -const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINLASTUSABLEVALUE = UA_STATUSCODE_UNCERTAINLASTUSABLEVALUE; -const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINSUBSTITUTEVALUE = UA_STATUSCODE_UNCERTAINSUBSTITUTEVALUE; -const UA_StatusCode RS_UA_STATUSCODE_UNCERTAININITIALVALUE = UA_STATUSCODE_UNCERTAININITIALVALUE; -const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINSENSORNOTACCURATE = UA_STATUSCODE_UNCERTAINSENSORNOTACCURATE; -const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINENGINEERINGUNITSEXCEEDED = UA_STATUSCODE_UNCERTAINENGINEERINGUNITSEXCEEDED; -const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINSUBNORMAL = UA_STATUSCODE_UNCERTAINSUBNORMAL; -const UA_StatusCode RS_UA_STATUSCODE_GOODLOCALOVERRIDE = UA_STATUSCODE_GOODLOCALOVERRIDE; -const UA_StatusCode RS_UA_STATUSCODE_BADREFRESHINPROGRESS = UA_STATUSCODE_BADREFRESHINPROGRESS; -const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONALREADYDISABLED = UA_STATUSCODE_BADCONDITIONALREADYDISABLED; -const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONALREADYENABLED = UA_STATUSCODE_BADCONDITIONALREADYENABLED; -const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONDISABLED = UA_STATUSCODE_BADCONDITIONDISABLED; -const UA_StatusCode RS_UA_STATUSCODE_BADEVENTIDUNKNOWN = UA_STATUSCODE_BADEVENTIDUNKNOWN; -const UA_StatusCode RS_UA_STATUSCODE_BADEVENTNOTACKNOWLEDGEABLE = UA_STATUSCODE_BADEVENTNOTACKNOWLEDGEABLE; -const UA_StatusCode RS_UA_STATUSCODE_BADDIALOGNOTACTIVE = UA_STATUSCODE_BADDIALOGNOTACTIVE; -const UA_StatusCode RS_UA_STATUSCODE_BADDIALOGRESPONSEINVALID = UA_STATUSCODE_BADDIALOGRESPONSEINVALID; -const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONBRANCHALREADYACKED = UA_STATUSCODE_BADCONDITIONBRANCHALREADYACKED; -const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONBRANCHALREADYCONFIRMED = UA_STATUSCODE_BADCONDITIONBRANCHALREADYCONFIRMED; -const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONALREADYSHELVED = UA_STATUSCODE_BADCONDITIONALREADYSHELVED; -const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONNOTSHELVED = UA_STATUSCODE_BADCONDITIONNOTSHELVED; -const UA_StatusCode RS_UA_STATUSCODE_BADSHELVINGTIMEOUTOFRANGE = UA_STATUSCODE_BADSHELVINGTIMEOUTOFRANGE; -const UA_StatusCode RS_UA_STATUSCODE_BADNODATA = UA_STATUSCODE_BADNODATA; -const UA_StatusCode RS_UA_STATUSCODE_BADBOUNDNOTFOUND = UA_STATUSCODE_BADBOUNDNOTFOUND; -const UA_StatusCode RS_UA_STATUSCODE_BADBOUNDNOTSUPPORTED = UA_STATUSCODE_BADBOUNDNOTSUPPORTED; -const UA_StatusCode RS_UA_STATUSCODE_BADDATALOST = UA_STATUSCODE_BADDATALOST; -const UA_StatusCode RS_UA_STATUSCODE_BADDATAUNAVAILABLE = UA_STATUSCODE_BADDATAUNAVAILABLE; -const UA_StatusCode RS_UA_STATUSCODE_BADENTRYEXISTS = UA_STATUSCODE_BADENTRYEXISTS; -const UA_StatusCode RS_UA_STATUSCODE_BADNOENTRYEXISTS = UA_STATUSCODE_BADNOENTRYEXISTS; -const UA_StatusCode RS_UA_STATUSCODE_BADTIMESTAMPNOTSUPPORTED = UA_STATUSCODE_BADTIMESTAMPNOTSUPPORTED; -const UA_StatusCode RS_UA_STATUSCODE_GOODENTRYINSERTED = UA_STATUSCODE_GOODENTRYINSERTED; -const UA_StatusCode RS_UA_STATUSCODE_GOODENTRYREPLACED = UA_STATUSCODE_GOODENTRYREPLACED; -const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINDATASUBNORMAL = UA_STATUSCODE_UNCERTAINDATASUBNORMAL; -const UA_StatusCode RS_UA_STATUSCODE_GOODNODATA = UA_STATUSCODE_GOODNODATA; -const UA_StatusCode RS_UA_STATUSCODE_GOODMOREDATA = UA_STATUSCODE_GOODMOREDATA; -const UA_StatusCode RS_UA_STATUSCODE_BADAGGREGATELISTMISMATCH = UA_STATUSCODE_BADAGGREGATELISTMISMATCH; -const UA_StatusCode RS_UA_STATUSCODE_BADAGGREGATENOTSUPPORTED = UA_STATUSCODE_BADAGGREGATENOTSUPPORTED; -const UA_StatusCode RS_UA_STATUSCODE_BADAGGREGATEINVALIDINPUTS = UA_STATUSCODE_BADAGGREGATEINVALIDINPUTS; -const UA_StatusCode RS_UA_STATUSCODE_BADAGGREGATECONFIGURATIONREJECTED = UA_STATUSCODE_BADAGGREGATECONFIGURATIONREJECTED; -const UA_StatusCode RS_UA_STATUSCODE_GOODDATAIGNORED = UA_STATUSCODE_GOODDATAIGNORED; -const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTNOTALLOWED = UA_STATUSCODE_BADREQUESTNOTALLOWED; -const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTNOTCOMPLETE = UA_STATUSCODE_BADREQUESTNOTCOMPLETE; -const UA_StatusCode RS_UA_STATUSCODE_BADTRANSACTIONPENDING = UA_STATUSCODE_BADTRANSACTIONPENDING; -const UA_StatusCode RS_UA_STATUSCODE_BADTICKETREQUIRED = UA_STATUSCODE_BADTICKETREQUIRED; -const UA_StatusCode RS_UA_STATUSCODE_BADTICKETINVALID = UA_STATUSCODE_BADTICKETINVALID; -const UA_StatusCode RS_UA_STATUSCODE_GOODEDITED = UA_STATUSCODE_GOODEDITED; -const UA_StatusCode RS_UA_STATUSCODE_GOODPOSTACTIONFAILED = UA_STATUSCODE_GOODPOSTACTIONFAILED; -const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINDOMINANTVALUECHANGED = UA_STATUSCODE_UNCERTAINDOMINANTVALUECHANGED; -const UA_StatusCode RS_UA_STATUSCODE_GOODDEPENDENTVALUECHANGED = UA_STATUSCODE_GOODDEPENDENTVALUECHANGED; -const UA_StatusCode RS_UA_STATUSCODE_BADDOMINANTVALUECHANGED = UA_STATUSCODE_BADDOMINANTVALUECHANGED; -const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINDEPENDENTVALUECHANGED = UA_STATUSCODE_UNCERTAINDEPENDENTVALUECHANGED; -const UA_StatusCode RS_UA_STATUSCODE_BADDEPENDENTVALUECHANGED = UA_STATUSCODE_BADDEPENDENTVALUECHANGED; -const UA_StatusCode RS_UA_STATUSCODE_GOODEDITED_DEPENDENTVALUECHANGED = UA_STATUSCODE_GOODEDITED_DEPENDENTVALUECHANGED; -const UA_StatusCode RS_UA_STATUSCODE_GOODEDITED_DOMINANTVALUECHANGED = UA_STATUSCODE_GOODEDITED_DOMINANTVALUECHANGED; -const UA_StatusCode RS_UA_STATUSCODE_GOODEDITED_DOMINANTVALUECHANGED_DEPENDENTVALUECHANGED = UA_STATUSCODE_GOODEDITED_DOMINANTVALUECHANGED_DEPENDENTVALUECHANGED; -const UA_StatusCode RS_UA_STATUSCODE_BADEDITED_OUTOFRANGE = UA_STATUSCODE_BADEDITED_OUTOFRANGE; -const UA_StatusCode RS_UA_STATUSCODE_BADINITIALVALUE_OUTOFRANGE = UA_STATUSCODE_BADINITIALVALUE_OUTOFRANGE; -const UA_StatusCode RS_UA_STATUSCODE_BADOUTOFRANGE_DOMINANTVALUECHANGED = UA_STATUSCODE_BADOUTOFRANGE_DOMINANTVALUECHANGED; -const UA_StatusCode RS_UA_STATUSCODE_BADEDITED_OUTOFRANGE_DOMINANTVALUECHANGED = UA_STATUSCODE_BADEDITED_OUTOFRANGE_DOMINANTVALUECHANGED; -const UA_StatusCode RS_UA_STATUSCODE_BADOUTOFRANGE_DOMINANTVALUECHANGED_DEPENDENTVALUECHANGED = UA_STATUSCODE_BADOUTOFRANGE_DOMINANTVALUECHANGED_DEPENDENTVALUECHANGED; -const UA_StatusCode RS_UA_STATUSCODE_BADEDITED_OUTOFRANGE_DOMINANTVALUECHANGED_DEPENDENTVALUECHANGED = UA_STATUSCODE_BADEDITED_OUTOFRANGE_DOMINANTVALUECHANGED_DEPENDENTVALUECHANGED; -const UA_StatusCode RS_UA_STATUSCODE_GOODCOMMUNICATIONEVENT = UA_STATUSCODE_GOODCOMMUNICATIONEVENT; -const UA_StatusCode RS_UA_STATUSCODE_GOODSHUTDOWNEVENT = UA_STATUSCODE_GOODSHUTDOWNEVENT; -const UA_StatusCode RS_UA_STATUSCODE_GOODCALLAGAIN = UA_STATUSCODE_GOODCALLAGAIN; -const UA_StatusCode RS_UA_STATUSCODE_GOODNONCRITICALTIMEOUT = UA_STATUSCODE_GOODNONCRITICALTIMEOUT; -const UA_StatusCode RS_UA_STATUSCODE_BADINVALIDARGUMENT = UA_STATUSCODE_BADINVALIDARGUMENT; -const UA_StatusCode RS_UA_STATUSCODE_BADCONNECTIONREJECTED = UA_STATUSCODE_BADCONNECTIONREJECTED; -const UA_StatusCode RS_UA_STATUSCODE_BADDISCONNECT = UA_STATUSCODE_BADDISCONNECT; -const UA_StatusCode RS_UA_STATUSCODE_BADCONNECTIONCLOSED = UA_STATUSCODE_BADCONNECTIONCLOSED; -const UA_StatusCode RS_UA_STATUSCODE_BADINVALIDSTATE = UA_STATUSCODE_BADINVALIDSTATE; -const UA_StatusCode RS_UA_STATUSCODE_BADENDOFSTREAM = UA_STATUSCODE_BADENDOFSTREAM; -const UA_StatusCode RS_UA_STATUSCODE_BADNODATAAVAILABLE = UA_STATUSCODE_BADNODATAAVAILABLE; -const UA_StatusCode RS_UA_STATUSCODE_BADWAITINGFORRESPONSE = UA_STATUSCODE_BADWAITINGFORRESPONSE; -const UA_StatusCode RS_UA_STATUSCODE_BADOPERATIONABANDONED = UA_STATUSCODE_BADOPERATIONABANDONED; -const UA_StatusCode RS_UA_STATUSCODE_BADEXPECTEDSTREAMTOBLOCK = UA_STATUSCODE_BADEXPECTEDSTREAMTOBLOCK; -const UA_StatusCode RS_UA_STATUSCODE_BADWOULDBLOCK = UA_STATUSCODE_BADWOULDBLOCK; -const UA_StatusCode RS_UA_STATUSCODE_BADSYNTAXERROR = UA_STATUSCODE_BADSYNTAXERROR; -const UA_StatusCode RS_UA_STATUSCODE_BADMAXCONNECTIONSREACHED = UA_STATUSCODE_BADMAXCONNECTIONSREACHED; +static const UA_StatusCode RS_UA_STATUSCODE_GOOD = UA_STATUSCODE_GOOD; +static const UA_StatusCode RS_UA_STATUSCODE_UNCERTAIN = UA_STATUSCODE_UNCERTAIN; +static const UA_StatusCode RS_UA_STATUSCODE_BAD = UA_STATUSCODE_BAD; +static const UA_StatusCode RS_UA_STATUSCODE_BADUNEXPECTEDERROR = UA_STATUSCODE_BADUNEXPECTEDERROR; +static const UA_StatusCode RS_UA_STATUSCODE_BADINTERNALERROR = UA_STATUSCODE_BADINTERNALERROR; +static const UA_StatusCode RS_UA_STATUSCODE_BADOUTOFMEMORY = UA_STATUSCODE_BADOUTOFMEMORY; +static const UA_StatusCode RS_UA_STATUSCODE_BADRESOURCEUNAVAILABLE = UA_STATUSCODE_BADRESOURCEUNAVAILABLE; +static const UA_StatusCode RS_UA_STATUSCODE_BADCOMMUNICATIONERROR = UA_STATUSCODE_BADCOMMUNICATIONERROR; +static const UA_StatusCode RS_UA_STATUSCODE_BADENCODINGERROR = UA_STATUSCODE_BADENCODINGERROR; +static const UA_StatusCode RS_UA_STATUSCODE_BADDECODINGERROR = UA_STATUSCODE_BADDECODINGERROR; +static const UA_StatusCode RS_UA_STATUSCODE_BADENCODINGLIMITSEXCEEDED = UA_STATUSCODE_BADENCODINGLIMITSEXCEEDED; +static const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTTOOLARGE = UA_STATUSCODE_BADREQUESTTOOLARGE; +static const UA_StatusCode RS_UA_STATUSCODE_BADRESPONSETOOLARGE = UA_STATUSCODE_BADRESPONSETOOLARGE; +static const UA_StatusCode RS_UA_STATUSCODE_BADUNKNOWNRESPONSE = UA_STATUSCODE_BADUNKNOWNRESPONSE; +static const UA_StatusCode RS_UA_STATUSCODE_BADTIMEOUT = UA_STATUSCODE_BADTIMEOUT; +static const UA_StatusCode RS_UA_STATUSCODE_BADSERVICEUNSUPPORTED = UA_STATUSCODE_BADSERVICEUNSUPPORTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADSHUTDOWN = UA_STATUSCODE_BADSHUTDOWN; +static const UA_StatusCode RS_UA_STATUSCODE_BADSERVERNOTCONNECTED = UA_STATUSCODE_BADSERVERNOTCONNECTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADSERVERHALTED = UA_STATUSCODE_BADSERVERHALTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADNOTHINGTODO = UA_STATUSCODE_BADNOTHINGTODO; +static const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYOPERATIONS = UA_STATUSCODE_BADTOOMANYOPERATIONS; +static const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYMONITOREDITEMS = UA_STATUSCODE_BADTOOMANYMONITOREDITEMS; +static const UA_StatusCode RS_UA_STATUSCODE_BADDATATYPEIDUNKNOWN = UA_STATUSCODE_BADDATATYPEIDUNKNOWN; +static const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEINVALID = UA_STATUSCODE_BADCERTIFICATEINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADSECURITYCHECKSFAILED = UA_STATUSCODE_BADSECURITYCHECKSFAILED; +static const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEPOLICYCHECKFAILED = UA_STATUSCODE_BADCERTIFICATEPOLICYCHECKFAILED; +static const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATETIMEINVALID = UA_STATUSCODE_BADCERTIFICATETIMEINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEISSUERTIMEINVALID = UA_STATUSCODE_BADCERTIFICATEISSUERTIMEINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEHOSTNAMEINVALID = UA_STATUSCODE_BADCERTIFICATEHOSTNAMEINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEURIINVALID = UA_STATUSCODE_BADCERTIFICATEURIINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEUSENOTALLOWED = UA_STATUSCODE_BADCERTIFICATEUSENOTALLOWED; +static const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEISSUERUSENOTALLOWED = UA_STATUSCODE_BADCERTIFICATEISSUERUSENOTALLOWED; +static const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEUNTRUSTED = UA_STATUSCODE_BADCERTIFICATEUNTRUSTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEREVOCATIONUNKNOWN = UA_STATUSCODE_BADCERTIFICATEREVOCATIONUNKNOWN; +static const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEISSUERREVOCATIONUNKNOWN = UA_STATUSCODE_BADCERTIFICATEISSUERREVOCATIONUNKNOWN; +static const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEREVOKED = UA_STATUSCODE_BADCERTIFICATEREVOKED; +static const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATEISSUERREVOKED = UA_STATUSCODE_BADCERTIFICATEISSUERREVOKED; +static const UA_StatusCode RS_UA_STATUSCODE_BADCERTIFICATECHAININCOMPLETE = UA_STATUSCODE_BADCERTIFICATECHAININCOMPLETE; +static const UA_StatusCode RS_UA_STATUSCODE_BADUSERACCESSDENIED = UA_STATUSCODE_BADUSERACCESSDENIED; +static const UA_StatusCode RS_UA_STATUSCODE_BADIDENTITYTOKENINVALID = UA_STATUSCODE_BADIDENTITYTOKENINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADIDENTITYTOKENREJECTED = UA_STATUSCODE_BADIDENTITYTOKENREJECTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADSECURECHANNELIDINVALID = UA_STATUSCODE_BADSECURECHANNELIDINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADINVALIDTIMESTAMP = UA_STATUSCODE_BADINVALIDTIMESTAMP; +static const UA_StatusCode RS_UA_STATUSCODE_BADNONCEINVALID = UA_STATUSCODE_BADNONCEINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADSESSIONIDINVALID = UA_STATUSCODE_BADSESSIONIDINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADSESSIONCLOSED = UA_STATUSCODE_BADSESSIONCLOSED; +static const UA_StatusCode RS_UA_STATUSCODE_BADSESSIONNOTACTIVATED = UA_STATUSCODE_BADSESSIONNOTACTIVATED; +static const UA_StatusCode RS_UA_STATUSCODE_BADSUBSCRIPTIONIDINVALID = UA_STATUSCODE_BADSUBSCRIPTIONIDINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTHEADERINVALID = UA_STATUSCODE_BADREQUESTHEADERINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADTIMESTAMPSTORETURNINVALID = UA_STATUSCODE_BADTIMESTAMPSTORETURNINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTCANCELLEDBYCLIENT = UA_STATUSCODE_BADREQUESTCANCELLEDBYCLIENT; +static const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYARGUMENTS = UA_STATUSCODE_BADTOOMANYARGUMENTS; +static const UA_StatusCode RS_UA_STATUSCODE_BADLICENSEEXPIRED = UA_STATUSCODE_BADLICENSEEXPIRED; +static const UA_StatusCode RS_UA_STATUSCODE_BADLICENSELIMITSEXCEEDED = UA_STATUSCODE_BADLICENSELIMITSEXCEEDED; +static const UA_StatusCode RS_UA_STATUSCODE_BADLICENSENOTAVAILABLE = UA_STATUSCODE_BADLICENSENOTAVAILABLE; +static const UA_StatusCode RS_UA_STATUSCODE_GOODSUBSCRIPTIONTRANSFERRED = UA_STATUSCODE_GOODSUBSCRIPTIONTRANSFERRED; +static const UA_StatusCode RS_UA_STATUSCODE_GOODCOMPLETESASYNCHRONOUSLY = UA_STATUSCODE_GOODCOMPLETESASYNCHRONOUSLY; +static const UA_StatusCode RS_UA_STATUSCODE_GOODOVERLOAD = UA_STATUSCODE_GOODOVERLOAD; +static const UA_StatusCode RS_UA_STATUSCODE_GOODCLAMPED = UA_STATUSCODE_GOODCLAMPED; +static const UA_StatusCode RS_UA_STATUSCODE_BADNOCOMMUNICATION = UA_STATUSCODE_BADNOCOMMUNICATION; +static const UA_StatusCode RS_UA_STATUSCODE_BADWAITINGFORINITIALDATA = UA_STATUSCODE_BADWAITINGFORINITIALDATA; +static const UA_StatusCode RS_UA_STATUSCODE_BADNODEIDINVALID = UA_STATUSCODE_BADNODEIDINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADNODEIDUNKNOWN = UA_STATUSCODE_BADNODEIDUNKNOWN; +static const UA_StatusCode RS_UA_STATUSCODE_BADATTRIBUTEIDINVALID = UA_STATUSCODE_BADATTRIBUTEIDINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADINDEXRANGEINVALID = UA_STATUSCODE_BADINDEXRANGEINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADINDEXRANGENODATA = UA_STATUSCODE_BADINDEXRANGENODATA; +static const UA_StatusCode RS_UA_STATUSCODE_BADDATAENCODINGINVALID = UA_STATUSCODE_BADDATAENCODINGINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADDATAENCODINGUNSUPPORTED = UA_STATUSCODE_BADDATAENCODINGUNSUPPORTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADNOTREADABLE = UA_STATUSCODE_BADNOTREADABLE; +static const UA_StatusCode RS_UA_STATUSCODE_BADNOTWRITABLE = UA_STATUSCODE_BADNOTWRITABLE; +static const UA_StatusCode RS_UA_STATUSCODE_BADOUTOFRANGE = UA_STATUSCODE_BADOUTOFRANGE; +static const UA_StatusCode RS_UA_STATUSCODE_BADNOTSUPPORTED = UA_STATUSCODE_BADNOTSUPPORTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADNOTFOUND = UA_STATUSCODE_BADNOTFOUND; +static const UA_StatusCode RS_UA_STATUSCODE_BADOBJECTDELETED = UA_STATUSCODE_BADOBJECTDELETED; +static const UA_StatusCode RS_UA_STATUSCODE_BADNOTIMPLEMENTED = UA_STATUSCODE_BADNOTIMPLEMENTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADMONITORINGMODEINVALID = UA_STATUSCODE_BADMONITORINGMODEINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADMONITOREDITEMIDINVALID = UA_STATUSCODE_BADMONITOREDITEMIDINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADMONITOREDITEMFILTERINVALID = UA_STATUSCODE_BADMONITOREDITEMFILTERINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADMONITOREDITEMFILTERUNSUPPORTED = UA_STATUSCODE_BADMONITOREDITEMFILTERUNSUPPORTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADFILTERNOTALLOWED = UA_STATUSCODE_BADFILTERNOTALLOWED; +static const UA_StatusCode RS_UA_STATUSCODE_BADSTRUCTUREMISSING = UA_STATUSCODE_BADSTRUCTUREMISSING; +static const UA_StatusCode RS_UA_STATUSCODE_BADEVENTFILTERINVALID = UA_STATUSCODE_BADEVENTFILTERINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADCONTENTFILTERINVALID = UA_STATUSCODE_BADCONTENTFILTERINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADFILTEROPERATORINVALID = UA_STATUSCODE_BADFILTEROPERATORINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADFILTEROPERATORUNSUPPORTED = UA_STATUSCODE_BADFILTEROPERATORUNSUPPORTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADFILTEROPERANDCOUNTMISMATCH = UA_STATUSCODE_BADFILTEROPERANDCOUNTMISMATCH; +static const UA_StatusCode RS_UA_STATUSCODE_BADFILTEROPERANDINVALID = UA_STATUSCODE_BADFILTEROPERANDINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADFILTERELEMENTINVALID = UA_STATUSCODE_BADFILTERELEMENTINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADFILTERLITERALINVALID = UA_STATUSCODE_BADFILTERLITERALINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADCONTINUATIONPOINTINVALID = UA_STATUSCODE_BADCONTINUATIONPOINTINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADNOCONTINUATIONPOINTS = UA_STATUSCODE_BADNOCONTINUATIONPOINTS; +static const UA_StatusCode RS_UA_STATUSCODE_BADREFERENCETYPEIDINVALID = UA_STATUSCODE_BADREFERENCETYPEIDINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADBROWSEDIRECTIONINVALID = UA_STATUSCODE_BADBROWSEDIRECTIONINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADNODENOTINVIEW = UA_STATUSCODE_BADNODENOTINVIEW; +static const UA_StatusCode RS_UA_STATUSCODE_BADNUMERICOVERFLOW = UA_STATUSCODE_BADNUMERICOVERFLOW; +static const UA_StatusCode RS_UA_STATUSCODE_BADSERVERURIINVALID = UA_STATUSCODE_BADSERVERURIINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADSERVERNAMEMISSING = UA_STATUSCODE_BADSERVERNAMEMISSING; +static const UA_StatusCode RS_UA_STATUSCODE_BADDISCOVERYURLMISSING = UA_STATUSCODE_BADDISCOVERYURLMISSING; +static const UA_StatusCode RS_UA_STATUSCODE_BADSEMAPHOREFILEMISSING = UA_STATUSCODE_BADSEMAPHOREFILEMISSING; +static const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTTYPEINVALID = UA_STATUSCODE_BADREQUESTTYPEINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADSECURITYMODEREJECTED = UA_STATUSCODE_BADSECURITYMODEREJECTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADSECURITYPOLICYREJECTED = UA_STATUSCODE_BADSECURITYPOLICYREJECTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYSESSIONS = UA_STATUSCODE_BADTOOMANYSESSIONS; +static const UA_StatusCode RS_UA_STATUSCODE_BADUSERSIGNATUREINVALID = UA_STATUSCODE_BADUSERSIGNATUREINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADAPPLICATIONSIGNATUREINVALID = UA_STATUSCODE_BADAPPLICATIONSIGNATUREINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADNOVALIDCERTIFICATES = UA_STATUSCODE_BADNOVALIDCERTIFICATES; +static const UA_StatusCode RS_UA_STATUSCODE_BADIDENTITYCHANGENOTSUPPORTED = UA_STATUSCODE_BADIDENTITYCHANGENOTSUPPORTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTCANCELLEDBYREQUEST = UA_STATUSCODE_BADREQUESTCANCELLEDBYREQUEST; +static const UA_StatusCode RS_UA_STATUSCODE_BADPARENTNODEIDINVALID = UA_STATUSCODE_BADPARENTNODEIDINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADREFERENCENOTALLOWED = UA_STATUSCODE_BADREFERENCENOTALLOWED; +static const UA_StatusCode RS_UA_STATUSCODE_BADNODEIDREJECTED = UA_STATUSCODE_BADNODEIDREJECTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADNODEIDEXISTS = UA_STATUSCODE_BADNODEIDEXISTS; +static const UA_StatusCode RS_UA_STATUSCODE_BADNODECLASSINVALID = UA_STATUSCODE_BADNODECLASSINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADBROWSENAMEINVALID = UA_STATUSCODE_BADBROWSENAMEINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADBROWSENAMEDUPLICATED = UA_STATUSCODE_BADBROWSENAMEDUPLICATED; +static const UA_StatusCode RS_UA_STATUSCODE_BADNODEATTRIBUTESINVALID = UA_STATUSCODE_BADNODEATTRIBUTESINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADTYPEDEFINITIONINVALID = UA_STATUSCODE_BADTYPEDEFINITIONINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADSOURCENODEIDINVALID = UA_STATUSCODE_BADSOURCENODEIDINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADTARGETNODEIDINVALID = UA_STATUSCODE_BADTARGETNODEIDINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADDUPLICATEREFERENCENOTALLOWED = UA_STATUSCODE_BADDUPLICATEREFERENCENOTALLOWED; +static const UA_StatusCode RS_UA_STATUSCODE_BADINVALIDSELFREFERENCE = UA_STATUSCODE_BADINVALIDSELFREFERENCE; +static const UA_StatusCode RS_UA_STATUSCODE_BADREFERENCELOCALONLY = UA_STATUSCODE_BADREFERENCELOCALONLY; +static const UA_StatusCode RS_UA_STATUSCODE_BADNODELETERIGHTS = UA_STATUSCODE_BADNODELETERIGHTS; +static const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINREFERENCENOTDELETED = UA_STATUSCODE_UNCERTAINREFERENCENOTDELETED; +static const UA_StatusCode RS_UA_STATUSCODE_BADSERVERINDEXINVALID = UA_STATUSCODE_BADSERVERINDEXINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADVIEWIDUNKNOWN = UA_STATUSCODE_BADVIEWIDUNKNOWN; +static const UA_StatusCode RS_UA_STATUSCODE_BADVIEWTIMESTAMPINVALID = UA_STATUSCODE_BADVIEWTIMESTAMPINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADVIEWPARAMETERMISMATCH = UA_STATUSCODE_BADVIEWPARAMETERMISMATCH; +static const UA_StatusCode RS_UA_STATUSCODE_BADVIEWVERSIONINVALID = UA_STATUSCODE_BADVIEWVERSIONINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINNOTALLNODESAVAILABLE = UA_STATUSCODE_UNCERTAINNOTALLNODESAVAILABLE; +static const UA_StatusCode RS_UA_STATUSCODE_GOODRESULTSMAYBEINCOMPLETE = UA_STATUSCODE_GOODRESULTSMAYBEINCOMPLETE; +static const UA_StatusCode RS_UA_STATUSCODE_BADNOTTYPEDEFINITION = UA_STATUSCODE_BADNOTTYPEDEFINITION; +static const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINREFERENCEOUTOFSERVER = UA_STATUSCODE_UNCERTAINREFERENCEOUTOFSERVER; +static const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYMATCHES = UA_STATUSCODE_BADTOOMANYMATCHES; +static const UA_StatusCode RS_UA_STATUSCODE_BADQUERYTOOCOMPLEX = UA_STATUSCODE_BADQUERYTOOCOMPLEX; +static const UA_StatusCode RS_UA_STATUSCODE_BADNOMATCH = UA_STATUSCODE_BADNOMATCH; +static const UA_StatusCode RS_UA_STATUSCODE_BADMAXAGEINVALID = UA_STATUSCODE_BADMAXAGEINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADSECURITYMODEINSUFFICIENT = UA_STATUSCODE_BADSECURITYMODEINSUFFICIENT; +static const UA_StatusCode RS_UA_STATUSCODE_BADHISTORYOPERATIONINVALID = UA_STATUSCODE_BADHISTORYOPERATIONINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADHISTORYOPERATIONUNSUPPORTED = UA_STATUSCODE_BADHISTORYOPERATIONUNSUPPORTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADINVALIDTIMESTAMPARGUMENT = UA_STATUSCODE_BADINVALIDTIMESTAMPARGUMENT; +static const UA_StatusCode RS_UA_STATUSCODE_BADWRITENOTSUPPORTED = UA_STATUSCODE_BADWRITENOTSUPPORTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADTYPEMISMATCH = UA_STATUSCODE_BADTYPEMISMATCH; +static const UA_StatusCode RS_UA_STATUSCODE_BADMETHODINVALID = UA_STATUSCODE_BADMETHODINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADARGUMENTSMISSING = UA_STATUSCODE_BADARGUMENTSMISSING; +static const UA_StatusCode RS_UA_STATUSCODE_BADNOTEXECUTABLE = UA_STATUSCODE_BADNOTEXECUTABLE; +static const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYSUBSCRIPTIONS = UA_STATUSCODE_BADTOOMANYSUBSCRIPTIONS; +static const UA_StatusCode RS_UA_STATUSCODE_BADTOOMANYPUBLISHREQUESTS = UA_STATUSCODE_BADTOOMANYPUBLISHREQUESTS; +static const UA_StatusCode RS_UA_STATUSCODE_BADNOSUBSCRIPTION = UA_STATUSCODE_BADNOSUBSCRIPTION; +static const UA_StatusCode RS_UA_STATUSCODE_BADSEQUENCENUMBERUNKNOWN = UA_STATUSCODE_BADSEQUENCENUMBERUNKNOWN; +static const UA_StatusCode RS_UA_STATUSCODE_GOODRETRANSMISSIONQUEUENOTSUPPORTED = UA_STATUSCODE_GOODRETRANSMISSIONQUEUENOTSUPPORTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADMESSAGENOTAVAILABLE = UA_STATUSCODE_BADMESSAGENOTAVAILABLE; +static const UA_StatusCode RS_UA_STATUSCODE_BADINSUFFICIENTCLIENTPROFILE = UA_STATUSCODE_BADINSUFFICIENTCLIENTPROFILE; +static const UA_StatusCode RS_UA_STATUSCODE_BADSTATENOTACTIVE = UA_STATUSCODE_BADSTATENOTACTIVE; +static const UA_StatusCode RS_UA_STATUSCODE_BADALREADYEXISTS = UA_STATUSCODE_BADALREADYEXISTS; +static const UA_StatusCode RS_UA_STATUSCODE_BADTCPSERVERTOOBUSY = UA_STATUSCODE_BADTCPSERVERTOOBUSY; +static const UA_StatusCode RS_UA_STATUSCODE_BADTCPMESSAGETYPEINVALID = UA_STATUSCODE_BADTCPMESSAGETYPEINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADTCPSECURECHANNELUNKNOWN = UA_STATUSCODE_BADTCPSECURECHANNELUNKNOWN; +static const UA_StatusCode RS_UA_STATUSCODE_BADTCPMESSAGETOOLARGE = UA_STATUSCODE_BADTCPMESSAGETOOLARGE; +static const UA_StatusCode RS_UA_STATUSCODE_BADTCPNOTENOUGHRESOURCES = UA_STATUSCODE_BADTCPNOTENOUGHRESOURCES; +static const UA_StatusCode RS_UA_STATUSCODE_BADTCPINTERNALERROR = UA_STATUSCODE_BADTCPINTERNALERROR; +static const UA_StatusCode RS_UA_STATUSCODE_BADTCPENDPOINTURLINVALID = UA_STATUSCODE_BADTCPENDPOINTURLINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTINTERRUPTED = UA_STATUSCODE_BADREQUESTINTERRUPTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTTIMEOUT = UA_STATUSCODE_BADREQUESTTIMEOUT; +static const UA_StatusCode RS_UA_STATUSCODE_BADSECURECHANNELCLOSED = UA_STATUSCODE_BADSECURECHANNELCLOSED; +static const UA_StatusCode RS_UA_STATUSCODE_BADSECURECHANNELTOKENUNKNOWN = UA_STATUSCODE_BADSECURECHANNELTOKENUNKNOWN; +static const UA_StatusCode RS_UA_STATUSCODE_BADSEQUENCENUMBERINVALID = UA_STATUSCODE_BADSEQUENCENUMBERINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADPROTOCOLVERSIONUNSUPPORTED = UA_STATUSCODE_BADPROTOCOLVERSIONUNSUPPORTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADCONFIGURATIONERROR = UA_STATUSCODE_BADCONFIGURATIONERROR; +static const UA_StatusCode RS_UA_STATUSCODE_BADNOTCONNECTED = UA_STATUSCODE_BADNOTCONNECTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADDEVICEFAILURE = UA_STATUSCODE_BADDEVICEFAILURE; +static const UA_StatusCode RS_UA_STATUSCODE_BADSENSORFAILURE = UA_STATUSCODE_BADSENSORFAILURE; +static const UA_StatusCode RS_UA_STATUSCODE_BADOUTOFSERVICE = UA_STATUSCODE_BADOUTOFSERVICE; +static const UA_StatusCode RS_UA_STATUSCODE_BADDEADBANDFILTERINVALID = UA_STATUSCODE_BADDEADBANDFILTERINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINNOCOMMUNICATIONLASTUSABLEVALUE = UA_STATUSCODE_UNCERTAINNOCOMMUNICATIONLASTUSABLEVALUE; +static const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINLASTUSABLEVALUE = UA_STATUSCODE_UNCERTAINLASTUSABLEVALUE; +static const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINSUBSTITUTEVALUE = UA_STATUSCODE_UNCERTAINSUBSTITUTEVALUE; +static const UA_StatusCode RS_UA_STATUSCODE_UNCERTAININITIALVALUE = UA_STATUSCODE_UNCERTAININITIALVALUE; +static const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINSENSORNOTACCURATE = UA_STATUSCODE_UNCERTAINSENSORNOTACCURATE; +static const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINENGINEERINGUNITSEXCEEDED = UA_STATUSCODE_UNCERTAINENGINEERINGUNITSEXCEEDED; +static const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINSUBNORMAL = UA_STATUSCODE_UNCERTAINSUBNORMAL; +static const UA_StatusCode RS_UA_STATUSCODE_GOODLOCALOVERRIDE = UA_STATUSCODE_GOODLOCALOVERRIDE; +static const UA_StatusCode RS_UA_STATUSCODE_BADREFRESHINPROGRESS = UA_STATUSCODE_BADREFRESHINPROGRESS; +static const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONALREADYDISABLED = UA_STATUSCODE_BADCONDITIONALREADYDISABLED; +static const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONALREADYENABLED = UA_STATUSCODE_BADCONDITIONALREADYENABLED; +static const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONDISABLED = UA_STATUSCODE_BADCONDITIONDISABLED; +static const UA_StatusCode RS_UA_STATUSCODE_BADEVENTIDUNKNOWN = UA_STATUSCODE_BADEVENTIDUNKNOWN; +static const UA_StatusCode RS_UA_STATUSCODE_BADEVENTNOTACKNOWLEDGEABLE = UA_STATUSCODE_BADEVENTNOTACKNOWLEDGEABLE; +static const UA_StatusCode RS_UA_STATUSCODE_BADDIALOGNOTACTIVE = UA_STATUSCODE_BADDIALOGNOTACTIVE; +static const UA_StatusCode RS_UA_STATUSCODE_BADDIALOGRESPONSEINVALID = UA_STATUSCODE_BADDIALOGRESPONSEINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONBRANCHALREADYACKED = UA_STATUSCODE_BADCONDITIONBRANCHALREADYACKED; +static const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONBRANCHALREADYCONFIRMED = UA_STATUSCODE_BADCONDITIONBRANCHALREADYCONFIRMED; +static const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONALREADYSHELVED = UA_STATUSCODE_BADCONDITIONALREADYSHELVED; +static const UA_StatusCode RS_UA_STATUSCODE_BADCONDITIONNOTSHELVED = UA_STATUSCODE_BADCONDITIONNOTSHELVED; +static const UA_StatusCode RS_UA_STATUSCODE_BADSHELVINGTIMEOUTOFRANGE = UA_STATUSCODE_BADSHELVINGTIMEOUTOFRANGE; +static const UA_StatusCode RS_UA_STATUSCODE_BADNODATA = UA_STATUSCODE_BADNODATA; +static const UA_StatusCode RS_UA_STATUSCODE_BADBOUNDNOTFOUND = UA_STATUSCODE_BADBOUNDNOTFOUND; +static const UA_StatusCode RS_UA_STATUSCODE_BADBOUNDNOTSUPPORTED = UA_STATUSCODE_BADBOUNDNOTSUPPORTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADDATALOST = UA_STATUSCODE_BADDATALOST; +static const UA_StatusCode RS_UA_STATUSCODE_BADDATAUNAVAILABLE = UA_STATUSCODE_BADDATAUNAVAILABLE; +static const UA_StatusCode RS_UA_STATUSCODE_BADENTRYEXISTS = UA_STATUSCODE_BADENTRYEXISTS; +static const UA_StatusCode RS_UA_STATUSCODE_BADNOENTRYEXISTS = UA_STATUSCODE_BADNOENTRYEXISTS; +static const UA_StatusCode RS_UA_STATUSCODE_BADTIMESTAMPNOTSUPPORTED = UA_STATUSCODE_BADTIMESTAMPNOTSUPPORTED; +static const UA_StatusCode RS_UA_STATUSCODE_GOODENTRYINSERTED = UA_STATUSCODE_GOODENTRYINSERTED; +static const UA_StatusCode RS_UA_STATUSCODE_GOODENTRYREPLACED = UA_STATUSCODE_GOODENTRYREPLACED; +static const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINDATASUBNORMAL = UA_STATUSCODE_UNCERTAINDATASUBNORMAL; +static const UA_StatusCode RS_UA_STATUSCODE_GOODNODATA = UA_STATUSCODE_GOODNODATA; +static const UA_StatusCode RS_UA_STATUSCODE_GOODMOREDATA = UA_STATUSCODE_GOODMOREDATA; +static const UA_StatusCode RS_UA_STATUSCODE_BADAGGREGATELISTMISMATCH = UA_STATUSCODE_BADAGGREGATELISTMISMATCH; +static const UA_StatusCode RS_UA_STATUSCODE_BADAGGREGATENOTSUPPORTED = UA_STATUSCODE_BADAGGREGATENOTSUPPORTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADAGGREGATEINVALIDINPUTS = UA_STATUSCODE_BADAGGREGATEINVALIDINPUTS; +static const UA_StatusCode RS_UA_STATUSCODE_BADAGGREGATECONFIGURATIONREJECTED = UA_STATUSCODE_BADAGGREGATECONFIGURATIONREJECTED; +static const UA_StatusCode RS_UA_STATUSCODE_GOODDATAIGNORED = UA_STATUSCODE_GOODDATAIGNORED; +static const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTNOTALLOWED = UA_STATUSCODE_BADREQUESTNOTALLOWED; +static const UA_StatusCode RS_UA_STATUSCODE_BADREQUESTNOTCOMPLETE = UA_STATUSCODE_BADREQUESTNOTCOMPLETE; +static const UA_StatusCode RS_UA_STATUSCODE_BADTRANSACTIONPENDING = UA_STATUSCODE_BADTRANSACTIONPENDING; +static const UA_StatusCode RS_UA_STATUSCODE_BADTICKETREQUIRED = UA_STATUSCODE_BADTICKETREQUIRED; +static const UA_StatusCode RS_UA_STATUSCODE_BADTICKETINVALID = UA_STATUSCODE_BADTICKETINVALID; +static const UA_StatusCode RS_UA_STATUSCODE_GOODEDITED = UA_STATUSCODE_GOODEDITED; +static const UA_StatusCode RS_UA_STATUSCODE_GOODPOSTACTIONFAILED = UA_STATUSCODE_GOODPOSTACTIONFAILED; +static const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINDOMINANTVALUECHANGED = UA_STATUSCODE_UNCERTAINDOMINANTVALUECHANGED; +static const UA_StatusCode RS_UA_STATUSCODE_GOODDEPENDENTVALUECHANGED = UA_STATUSCODE_GOODDEPENDENTVALUECHANGED; +static const UA_StatusCode RS_UA_STATUSCODE_BADDOMINANTVALUECHANGED = UA_STATUSCODE_BADDOMINANTVALUECHANGED; +static const UA_StatusCode RS_UA_STATUSCODE_UNCERTAINDEPENDENTVALUECHANGED = UA_STATUSCODE_UNCERTAINDEPENDENTVALUECHANGED; +static const UA_StatusCode RS_UA_STATUSCODE_BADDEPENDENTVALUECHANGED = UA_STATUSCODE_BADDEPENDENTVALUECHANGED; +static const UA_StatusCode RS_UA_STATUSCODE_GOODEDITED_DEPENDENTVALUECHANGED = UA_STATUSCODE_GOODEDITED_DEPENDENTVALUECHANGED; +static const UA_StatusCode RS_UA_STATUSCODE_GOODEDITED_DOMINANTVALUECHANGED = UA_STATUSCODE_GOODEDITED_DOMINANTVALUECHANGED; +static const UA_StatusCode RS_UA_STATUSCODE_GOODEDITED_DOMINANTVALUECHANGED_DEPENDENTVALUECHANGED = UA_STATUSCODE_GOODEDITED_DOMINANTVALUECHANGED_DEPENDENTVALUECHANGED; +static const UA_StatusCode RS_UA_STATUSCODE_BADEDITED_OUTOFRANGE = UA_STATUSCODE_BADEDITED_OUTOFRANGE; +static const UA_StatusCode RS_UA_STATUSCODE_BADINITIALVALUE_OUTOFRANGE = UA_STATUSCODE_BADINITIALVALUE_OUTOFRANGE; +static const UA_StatusCode RS_UA_STATUSCODE_BADOUTOFRANGE_DOMINANTVALUECHANGED = UA_STATUSCODE_BADOUTOFRANGE_DOMINANTVALUECHANGED; +static const UA_StatusCode RS_UA_STATUSCODE_BADEDITED_OUTOFRANGE_DOMINANTVALUECHANGED = UA_STATUSCODE_BADEDITED_OUTOFRANGE_DOMINANTVALUECHANGED; +static const UA_StatusCode RS_UA_STATUSCODE_BADOUTOFRANGE_DOMINANTVALUECHANGED_DEPENDENTVALUECHANGED = UA_STATUSCODE_BADOUTOFRANGE_DOMINANTVALUECHANGED_DEPENDENTVALUECHANGED; +static const UA_StatusCode RS_UA_STATUSCODE_BADEDITED_OUTOFRANGE_DOMINANTVALUECHANGED_DEPENDENTVALUECHANGED = UA_STATUSCODE_BADEDITED_OUTOFRANGE_DOMINANTVALUECHANGED_DEPENDENTVALUECHANGED; +static const UA_StatusCode RS_UA_STATUSCODE_GOODCOMMUNICATIONEVENT = UA_STATUSCODE_GOODCOMMUNICATIONEVENT; +static const UA_StatusCode RS_UA_STATUSCODE_GOODSHUTDOWNEVENT = UA_STATUSCODE_GOODSHUTDOWNEVENT; +static const UA_StatusCode RS_UA_STATUSCODE_GOODCALLAGAIN = UA_STATUSCODE_GOODCALLAGAIN; +static const UA_StatusCode RS_UA_STATUSCODE_GOODNONCRITICALTIMEOUT = UA_STATUSCODE_GOODNONCRITICALTIMEOUT; +static const UA_StatusCode RS_UA_STATUSCODE_BADINVALIDARGUMENT = UA_STATUSCODE_BADINVALIDARGUMENT; +static const UA_StatusCode RS_UA_STATUSCODE_BADCONNECTIONREJECTED = UA_STATUSCODE_BADCONNECTIONREJECTED; +static const UA_StatusCode RS_UA_STATUSCODE_BADDISCONNECT = UA_STATUSCODE_BADDISCONNECT; +static const UA_StatusCode RS_UA_STATUSCODE_BADCONNECTIONCLOSED = UA_STATUSCODE_BADCONNECTIONCLOSED; +static const UA_StatusCode RS_UA_STATUSCODE_BADINVALIDSTATE = UA_STATUSCODE_BADINVALIDSTATE; +static const UA_StatusCode RS_UA_STATUSCODE_BADENDOFSTREAM = UA_STATUSCODE_BADENDOFSTREAM; +static const UA_StatusCode RS_UA_STATUSCODE_BADNODATAAVAILABLE = UA_STATUSCODE_BADNODATAAVAILABLE; +static const UA_StatusCode RS_UA_STATUSCODE_BADWAITINGFORRESPONSE = UA_STATUSCODE_BADWAITINGFORRESPONSE; +static const UA_StatusCode RS_UA_STATUSCODE_BADOPERATIONABANDONED = UA_STATUSCODE_BADOPERATIONABANDONED; +static const UA_StatusCode RS_UA_STATUSCODE_BADEXPECTEDSTREAMTOBLOCK = UA_STATUSCODE_BADEXPECTEDSTREAMTOBLOCK; +static const UA_StatusCode RS_UA_STATUSCODE_BADWOULDBLOCK = UA_STATUSCODE_BADWOULDBLOCK; +static const UA_StatusCode RS_UA_STATUSCODE_BADSYNTAXERROR = UA_STATUSCODE_BADSYNTAXERROR; +static const UA_StatusCode RS_UA_STATUSCODE_BADMAXCONNECTIONSREACHED = UA_STATUSCODE_BADMAXCONNECTIONSREACHED; From 3959fde5e2d23ab7a73b7054c528452f77858adc Mon Sep 17 00:00:00 2001 From: Uwe Klotz Date: Sat, 28 Mar 2026 12:32:33 +0100 Subject: [PATCH 11/15] Bump version number --- Cargo.lock | 2 +- Cargo.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 0a0ae73..0e5134c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -155,7 +155,7 @@ dependencies = [ [[package]] name = "open62541-sys" -version = "0.5.4" +version = "0.6.0" dependencies = [ "bindgen", "cc", diff --git a/Cargo.toml b/Cargo.toml index 111ebec..150a92d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "open62541-sys" -version = "0.5.4" +version = "0.6.0" authors = ["HMI Project"] edition = "2024" # Keep MSRV in sync with `test.yaml`/`build.rs`. Use versions that are at least 6 months old. From b9da70b1e01e9eca0f8b38292247b0623bd325dd Mon Sep 17 00:00:00 2001 From: Uwe Klotz Date: Sat, 28 Mar 2026 12:32:54 +0100 Subject: [PATCH 12/15] Update dependencies --- Cargo.lock | 12 ++++++------ Cargo.toml | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 0e5134c..60234ef 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -39,9 +39,9 @@ checksum = "843867be96c8daad0d758b57df9392b6d8d271134fce549de6ce169ff98a92af" [[package]] name = "cc" -version = "1.2.57" +version = "1.2.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a0dd1ca384932ff3641c8718a02769f1698e7563dc6974ffd03346116310423" +checksum = "e1e928d4b69e3077709075a938a05ffbedfa53a84c8f766efbf8220bb1ff60e1" dependencies = [ "find-msvc-tools", "shlex", @@ -75,9 +75,9 @@ dependencies = [ [[package]] name = "cmake" -version = "0.1.57" +version = "0.1.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75443c44cd6b379beb8c5b45d85d0773baf31cce901fe7bb252f4eff3008ef7d" +checksum = "c0f78a02292a74a88ac736019ab962ece0bc380e3f977bf72e376c5d78ff0678" dependencies = [ "cc", ] @@ -222,9 +222,9 @@ checksum = "dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a" [[package]] name = "rustc-hash" -version = "2.1.1" +version = "2.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" +checksum = "94300abf3f1ae2e2b8ffb7b58043de3d399c73fa6f4b73826402a5c457614dbe" [[package]] name = "shlex" diff --git a/Cargo.toml b/Cargo.toml index 150a92d..d3ca45a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -59,8 +59,8 @@ include = [ [build-dependencies] bindgen = { version = "0.72.1" } -cc = "1.2.57" -cmake = "0.1.57" +cc = "1.2.58" +cmake = "0.1.58" version_check = "0.9.5" [features] From 239beab15a27cb501cfa4544ff816cd9593c14e3 Mon Sep 17 00:00:00 2001 From: Uwe Klotz Date: Mon, 20 Apr 2026 17:25:21 +0200 Subject: [PATCH 13/15] Upgrade to open62541 v1.5.4 (#100) --- CHANGELOG.md | 2 +- open62541 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3655554..ec0cfc1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,7 +10,7 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ### Changed - Breaking: Upgrade to open62541 version - [1.5.3](https://github.com/open62541/open62541/releases/tag/v1.5.3). + [1.5.4](https://github.com/open62541/open62541/releases/tag/v1.5.4). ## [0.5.4] - 2026-03-16 diff --git a/open62541 b/open62541 index 0871415..dfd44a2 160000 --- a/open62541 +++ b/open62541 @@ -1 +1 @@ -Subproject commit 0871415294fd5cfb0cc6b989ea4ebab047378181 +Subproject commit dfd44a234645ed29cc6d190048bc8ae80c5454cd From 26c26f100d0d9db31b4aaad1c788e7fbae1dc1e1 Mon Sep 17 00:00:00 2001 From: Uwe Klotz Date: Wed, 27 May 2026 10:25:40 +0200 Subject: [PATCH 14/15] Update pre-commit plugins --- .pre-commit-config.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index dfdf7c4..bd96f45 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -22,7 +22,7 @@ repos: - id: mixed-line-ending - id: trailing-whitespace - repo: https://github.com/DavidAnson/markdownlint-cli2 - rev: v0.22.0 + rev: v0.22.1 hooks: - id: markdownlint-cli2 - repo: https://github.com/codespell-project/codespell @@ -31,7 +31,7 @@ repos: - id: codespell args: [--ignore-words=.codespellignore] - repo: https://github.com/sirosen/check-jsonschema - rev: 0.37.1 + rev: 0.37.2 hooks: - id: check-github-actions - id: check-github-workflows @@ -42,7 +42,7 @@ repos: - id: taplo-lint # Format code with oxfmt for supported file types. - repo: https://github.com/oxc-project/mirrors-oxfmt - rev: v0.43.0 + rev: v0.45.0 hooks: - id: oxfmt types_or: From ffda3c08c1b7eaa7cfa5a5c24b3ea5db58c3c29e Mon Sep 17 00:00:00 2001 From: Uwe Klotz Date: Wed, 27 May 2026 10:28:15 +0200 Subject: [PATCH 15/15] pre-commit: Use oxfmt for formatting TOML files --- .pre-commit-config.yaml | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index bd96f45..0122dd1 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -35,11 +35,13 @@ repos: hooks: - id: check-github-actions - id: check-github-workflows - - repo: https://github.com/ComPWA/taplo-pre-commit - rev: v0.9.3 - hooks: - - id: taplo-format - - id: taplo-lint + # The taplo-lint checks have been disabled, because they only work with + # the newest Rust version and don't respect the `rust-version` field in + # `Cargo.toml`. + # - repo: https://github.com/ComPWA/taplo-pre-commit + # rev: v0.9.3 + # hooks: + # - id: taplo-lint # Format code with oxfmt for supported file types. - repo: https://github.com/oxc-project/mirrors-oxfmt rev: v0.45.0 @@ -48,6 +50,7 @@ repos: types_or: - json - markdown + - toml - yaml - repo: https://github.com/doublify/pre-commit-rust rev: v1.0