diff --git a/Cargo.lock b/Cargo.lock index bb505c6..b5f5da5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -281,20 +281,6 @@ dependencies = [ "tower-service", ] -[[package]] -name = "backend-secure" -version = "0.1.0" -dependencies = [ - "rnex-base", - "rnex-ds", - "rnex-fpd", - "rnex-mm", - "rnex-msg", - "rnex-rk", - "rnex-server", - "tokio", -] - [[package]] name = "backtrace" version = "0.3.76" @@ -1699,16 +1685,6 @@ dependencies = [ "libc", ] -[[package]] -name = "node-holder-backend" -version = "0.1.0" -dependencies = [ - "rnex-node-holder", - "rnex-reggie-protos", - "rnex-server", - "tokio", -] - [[package]] name = "nu-ansi-term" version = "0.50.3" @@ -2708,6 +2684,30 @@ dependencies = [ "tokio", ] +[[package]] +name = "rnex-server-backend-node-holder" +version = "0.1.0" +dependencies = [ + "rnex-node-holder", + "rnex-reggie-protos", + "rnex-server", + "tokio", +] + +[[package]] +name = "rnex-server-backend-secure" +version = "0.1.0" +dependencies = [ + "rnex-base", + "rnex-ds", + "rnex-fpd", + "rnex-mm", + "rnex-msg", + "rnex-rk", + "rnex-server", + "tokio", +] + [[package]] name = "rnex-util" version = "0.1.0" diff --git a/Dockerfile b/Dockerfile index 709c159..8d1b360 100644 --- a/Dockerfile +++ b/Dockerfile @@ -25,16 +25,16 @@ RUN --mount=type=cache,id=${EDITION}-registry,target=/usr/local/cargo/registry \ --mount=type=cache,id=${EDITION}-target,target=/app/target \ RNEX_STATIC=1 ./test-edition.sh && RNEX_STATIC=1 ./build-edition.sh && \ mkdir -p /app/dist && \ - cp /app/target/x86_64-unknown-linux-musl/release/edge_node_holder_server /app/dist/ && \ + cp /app/target/x86_64-unknown-linux-musl/release/rnex-server-backend-node-holder /app/dist/ && \ cp /app/target/x86_64-unknown-linux-musl/release/proxy_insecure /app/dist/ && \ cp /app/target/x86_64-unknown-linux-musl/release/proxy_secure /app/dist/ && \ - cp /app/target/x86_64-unknown-linux-musl/release/backend_server_insecure /app/dist/ && \ - cp /app/target/x86_64-unknown-linux-musl/release/backend_server_secure /app/dist/ + cp /app/target/x86_64-unknown-linux-musl/release/rnex-server-backend-auth /app/dist/ && \ + cp /app/target/x86_64-unknown-linux-musl/release/rnex-server-backend-secure /app/dist/ FROM scratch AS node-holder -COPY --from=builder /app/dist/edge_node_holder_server /edge_node_holder_server -ENTRYPOINT ["/edge_node_holder_server"] +COPY --from=builder /app/dist/rnex-server-backend-node-holder /rnex-server-backend-node-holder +ENTRYPOINT ["/rnex-server-backend-node-holder"] FROM scratch AS proxy-insecure COPY --from=builder /app/dist/proxy_insecure /proxy_insecure @@ -45,13 +45,9 @@ COPY --from=builder /app/dist/proxy_secure /proxy_secure ENTRYPOINT ["/proxy_secure"] FROM scratch AS backend-auth -COPY --from=builder /app/dist/backend_server_insecure /backend_server_insecure -ENTRYPOINT ["/backend_server_insecure"] +COPY --from=builder /app/dist/rnex-server-backend-auth /rnex-server-backend-auth +ENTRYPOINT ["/rnex-server-backend-auth"] FROM scratch AS backend-secure -COPY --from=builder /app/dist/backend_server_secure /backend_server_secure -ENTRYPOINT ["/backend_server_secure"] - -FROM chef AS dev-container -RUN apk add --no-cache openjdk21-jdk gcompat git bash protobuf-dev -COPY --from=builder /app/dist/* /usr/local/bin/ +COPY --from=builder /app/dist/rnex-server-backend-secure /rnex-server-backend-secure +ENTRYPOINT ["/rnex-server-backend-secure"] diff --git a/check-edition.sh b/check-edition.sh index 92cfc09..d41cb81 100755 --- a/check-edition.sh +++ b/check-edition.sh @@ -14,5 +14,5 @@ echo FEATURES: echo $EDITION_FEATURES # RUSTFLAGS="--deny warnings" cargo clippy --workspace --features "$EDITION_FEATURES" -# RUSTFLAGS="--deny warnings" cargo check --workspace --features "$EDITION_FEATURES" -echo "edition checks are disabled right now due to being in" +RUSTFLAGS="--deny warnings" cargo check --workspace --features "$EDITION_FEATURES" +# echo "edition checks are disabled right now due to being in" diff --git a/editions.yaml b/editions.yaml index 478ea3d..f9c0855 100644 --- a/editions.yaml +++ b/editions.yaml @@ -98,6 +98,8 @@ splatoon: - prudpv1 - v3-8-15 - splatoon + - match-making + - ranking settings: AUTH_REPORT_VERSION: "branch:origin/project/wup-agmj build:3_8_15_2004_0" RNEX_VIRTUAL_PORT_INSECURE: "1:10" diff --git a/proxy-common/src/lib.rs b/proxy-common/src/lib.rs index 1f637a1..258834c 100644 --- a/proxy-common/src/lib.rs +++ b/proxy-common/src/lib.rs @@ -17,7 +17,7 @@ use std::{ }; use thiserror::Error; use tokio::net::TcpStream; -use tracing::{error, info, instrument}; +use tracing::{error, info}; const RNEX_DEFAULT_PORT: u16 = match u16::from_str_radix(env!("RNEX_DEFAULT_PORT"), 10) { Ok(v) => v, diff --git a/rnex-protocols/auth-protos/Cargo.toml b/rnex-protocols/auth-protos/Cargo.toml index 7bc3cea..74c4000 100644 --- a/rnex-protocols/auth-protos/Cargo.toml +++ b/rnex-protocols/auth-protos/Cargo.toml @@ -10,7 +10,20 @@ rnex-rmc = { path = "../../rnex-rmc" } tokio = { version = "1.52.3", features = ["time", "sync"] } [features] +friends = [] +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] nx = [] +third-notif-param = [] +v3-3-2 = [] +v3-4-0 = ["v3-3-2", "third-notif-param"] +v3-5-0 = ["v3-4-0"] +v3-8-15 = ["v3-5-0"] +v3-10-22 = ["v3-8-15"] +v4-3-11 = ["v3-8-15"] +rmc_struct_header = [] +big_pid = [] [lints] workspace = true diff --git a/rnex-protocols/base-protos/Cargo.toml b/rnex-protocols/base-protos/Cargo.toml index 55bb5e3..dfc9217 100644 --- a/rnex-protocols/base-protos/Cargo.toml +++ b/rnex-protocols/base-protos/Cargo.toml @@ -7,5 +7,21 @@ edition = "2024" ctor = "1.0.8" rnex-rmc = { path = "../../rnex-rmc" } +[features] +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] +nx = [] +third-notif-param = [] +friends = [] +v3-3-2 = [] +v3-4-0 = ["v3-3-2", "third-notif-param"] +v3-5-0 = ["v3-4-0"] +v3-8-15 = ["v3-5-0"] +v3-10-22 = ["v3-8-15"] +v4-3-11 = ["v3-8-15"] +rmc_struct_header = [] +big_pid = [] + [lints] workspace = true diff --git a/rnex-protocols/ds-protos/Cargo.toml b/rnex-protocols/ds-protos/Cargo.toml index 175cb99..780b400 100644 --- a/rnex-protocols/ds-protos/Cargo.toml +++ b/rnex-protocols/ds-protos/Cargo.toml @@ -9,7 +9,20 @@ rnex-rmc = { path = "../../rnex-rmc" } rnex-base-protos = { path = "../base-protos" } [features] -datastore = [] +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] +nx = [] +third-notif-param = [] +friends = [] +v3-3-2 = [] +v3-4-0 = ["v3-3-2", "third-notif-param"] +v3-5-0 = ["v3-4-0"] +v3-8-15 = ["v3-5-0"] +v3-10-22 = ["v3-8-15"] +v4-3-11 = ["v3-8-15"] +rmc_struct_header = [] +big_pid = [] [lints] workspace = true diff --git a/rnex-protocols/fpd-protos/Cargo.toml b/rnex-protocols/fpd-protos/Cargo.toml index 1e28cf2..cbd9c67 100644 --- a/rnex-protocols/fpd-protos/Cargo.toml +++ b/rnex-protocols/fpd-protos/Cargo.toml @@ -7,5 +7,21 @@ edition = "2024" ctor = "1.0.8" rnex-rmc = { path = "../../rnex-rmc" } +[features] +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] +nx = [] +third-notif-param = [] +friends = [] +v3-3-2 = [] +v3-4-0 = ["v3-3-2", "third-notif-param"] +v3-5-0 = ["v3-4-0"] +v3-8-15 = ["v3-5-0"] +v3-10-22 = ["v3-8-15"] +v4-3-11 = ["v3-8-15"] +rmc_struct_header = [] +big_pid = [] + [lints] workspace = true diff --git a/rnex-protocols/mm-protos/Cargo.toml b/rnex-protocols/mm-protos/Cargo.toml index d2218e4..36ec415 100644 --- a/rnex-protocols/mm-protos/Cargo.toml +++ b/rnex-protocols/mm-protos/Cargo.toml @@ -11,6 +11,10 @@ rnex-base-protos = { path = "../base-protos" } rnex-util = {path = "../../rnex-util"} [features] +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] +nx = [] third-notif-param = [] v3-3-2 = [] v3-4-0 = ["v3-3-2", "third-notif-param"] @@ -18,6 +22,9 @@ v3-5-0 = ["v3-4-0"] v3-8-15 = ["v3-5-0"] v3-10-22 = ["v3-8-15"] v4-3-11 = ["v3-8-15"] +friends = [] +rmc_struct_header = [] +big_pid = [] [lints] workspace = true diff --git a/rnex-protocols/msg-protos/Cargo.toml b/rnex-protocols/msg-protos/Cargo.toml index cf45459..7e88245 100644 --- a/rnex-protocols/msg-protos/Cargo.toml +++ b/rnex-protocols/msg-protos/Cargo.toml @@ -8,12 +8,20 @@ ctor = "1.0.8" rnex-rmc = { path = "../../rnex-rmc" } [features] +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] +nx = [] +third-notif-param = [] v3-3-2 = [] -v3-4-0 = ["v3-3-2"] +v3-4-0 = ["v3-3-2", "third-notif-param"] v3-5-0 = ["v3-4-0"] v3-8-15 = ["v3-5-0"] v3-10-22 = ["v3-8-15"] v4-3-11 = ["v3-8-15"] +friends = [] +rmc_struct_header = [] +big_pid = [] [lints] workspace = true diff --git a/rnex-protocols/reggie-protos/Cargo.toml b/rnex-protocols/reggie-protos/Cargo.toml index 99b2089..3370285 100644 --- a/rnex-protocols/reggie-protos/Cargo.toml +++ b/rnex-protocols/reggie-protos/Cargo.toml @@ -7,5 +7,21 @@ edition = "2024" ctor = "1.0.8" rnex-rmc = { path = "../../rnex-rmc" } +[features] +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] +nx = [] +third-notif-param = [] +v3-3-2 = [] +v3-4-0 = ["v3-3-2", "third-notif-param"] +v3-5-0 = ["v3-4-0"] +v3-8-15 = ["v3-5-0"] +v3-10-22 = ["v3-8-15"] +v4-3-11 = ["v3-8-15"] +friends = [] +rmc_struct_header = [] +big_pid = [] + [lints] workspace = true diff --git a/rnex-protocols/rk-protos/Cargo.toml b/rnex-protocols/rk-protos/Cargo.toml index f77ce64..0aeac6f 100644 --- a/rnex-protocols/rk-protos/Cargo.toml +++ b/rnex-protocols/rk-protos/Cargo.toml @@ -9,5 +9,21 @@ ctor = "1.0.8" rnex-rmc = { path = "../../rnex-rmc" } rnex-base-protos = { path = "../base-protos" } +[features] +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] +nx = [] +third-notif-param = [] +v3-3-2 = [] +v3-4-0 = ["v3-3-2", "third-notif-param"] +v3-5-0 = ["v3-4-0"] +v3-8-15 = ["v3-5-0"] +v3-10-22 = ["v3-8-15"] +v4-3-11 = ["v3-8-15"] +friends = [] +rmc_struct_header = [] +big_pid = [] + [lints] workspace = true diff --git a/rnex-prudp/Cargo.toml b/rnex-prudp/Cargo.toml index 17fe068..0724a73 100644 --- a/rnex-prudp/Cargo.toml +++ b/rnex-prudp/Cargo.toml @@ -16,7 +16,20 @@ tracing = "0.1.44" v-byte-helpers = { git = "https://github.com/RusticMaple/VByteMacros", version = "0.1.1" } [features] +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] +nx = [] +third-notif-param = [] +v3-3-2 = [] +v3-4-0 = ["v3-3-2", "third-notif-param"] +v3-5-0 = ["v3-4-0"] +v3-8-15 = ["v3-5-0"] +v3-10-22 = ["v3-8-15"] +v4-3-11 = ["v3-8-15"] friends = [] +rmc_struct_header = [] +big_pid = [] [lints] workspace = true diff --git a/rnex-rmc/Cargo.toml b/rnex-rmc/Cargo.toml index a9d8758..e9d80b4 100644 --- a/rnex-rmc/Cargo.toml +++ b/rnex-rmc/Cargo.toml @@ -17,15 +17,20 @@ rand = "0.10.2" hex = "0.4.3" [features] -rmc_struct_header = [] -big_pid = [] - +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] +nx = [] +third-notif-param = [] v3-3-2 = [] -v3-4-0 = ["v3-3-2", "rmc_struct_header"] +v3-4-0 = ["v3-3-2", "third-notif-param"] v3-5-0 = ["v3-4-0"] v3-8-15 = ["v3-5-0"] v3-10-22 = ["v3-8-15"] v4-3-11 = ["v3-8-15"] +friends = [] +rmc_struct_header = [] +big_pid = [] [lints] workspace = true diff --git a/rnex-server-nex-modules/rnex-auth/Cargo.toml b/rnex-server-nex-modules/rnex-auth/Cargo.toml index a09095a..39e2e59 100644 --- a/rnex-server-nex-modules/rnex-auth/Cargo.toml +++ b/rnex-server-nex-modules/rnex-auth/Cargo.toml @@ -35,5 +35,6 @@ splatoon = ["v3-5-0"] datastore = ["database-support", "v3-8-15"] database-support = [] + [lints] workspace = true diff --git a/rnex-server-nex-modules/rnex-auth/src/auth_handler.rs b/rnex-server-nex-modules/rnex-auth/src/auth_handler.rs index c40b725..9f842c9 100644 --- a/rnex-server-nex-modules/rnex-auth/src/auth_handler.rs +++ b/rnex-server-nex-modules/rnex-auth/src/auth_handler.rs @@ -1,12 +1,12 @@ use std::{ hash::{DefaultHasher, Hasher}, net::SocketAddrV4, - sync::{Arc, LazyLock}, + sync::{LazyLock}, }; use cfg_if::cfg_if; use nex_account::{ - grpc::{self, nex_account_service_client}, + grpc, grpc_client, }; use rnex_auth_protos::{ @@ -14,11 +14,9 @@ use rnex_auth_protos::{ auth::{Auth, ConnectionData, ConnectionDataOld}, }; use rnex_prudp::kerberos::{Ticket, TicketInternalData}; -use rnex_reggie_protos::reggie::{RemoteEdgeNodeHolder, RemoteEdgeNodeManagement}; +use rnex_reggie_protos::reggie::{RemoteEdgeNodeManagement}; use rnex_rmc::{ - OnlyRemote, any::Any, - define_rmc_proto, qresult::QResult, rand, response::ErrorCode, diff --git a/rnex-server-nex-modules/rnex-auth/src/lib.rs b/rnex-server-nex-modules/rnex-auth/src/lib.rs index 627e531..820b64e 100644 --- a/rnex-server-nex-modules/rnex-auth/src/lib.rs +++ b/rnex-server-nex-modules/rnex-auth/src/lib.rs @@ -1,7 +1,7 @@ #[allow(async_fn_in_trait)] pub mod auth_handler; -use std::{convert::Infallible, env, error::Error, net::SocketAddr, sync::Arc}; +use std::{env, net::SocketAddr, sync::Arc}; use tokio::net::TcpStream; use nex_account::{grpc::Pid, grpc_client}; diff --git a/rnex-server-nex-modules/rnex-base/Cargo.toml b/rnex-server-nex-modules/rnex-base/Cargo.toml index 252e244..92078e5 100644 --- a/rnex-server-nex-modules/rnex-base/Cargo.toml +++ b/rnex-server-nex-modules/rnex-base/Cargo.toml @@ -13,5 +13,22 @@ rand = "0.10.2" tracing = "0.1.44" cfg-if = "1.0.4" +[features] +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] +nx = [] +third-notif-param = [] +v3-3-2 = [] +v3-4-0 = ["v3-3-2", "third-notif-param"] +v3-5-0 = ["v3-4-0"] +v3-8-15 = ["v3-5-0"] +v3-10-22 = ["v3-8-15"] +v4-3-11 = ["v3-8-15"] +friends = [] +rmc_struct_header = [] +big_pid = [] + + [lints] workspace = true diff --git a/rnex-server-nex-modules/rnex-base/src/user.rs b/rnex-server-nex-modules/rnex-base/src/user.rs index 912227f..f8d6ce2 100644 --- a/rnex-server-nex-modules/rnex-base/src/user.rs +++ b/rnex-server-nex-modules/rnex-base/src/user.rs @@ -2,16 +2,13 @@ use std::net::SocketAddr; use rnex_base_protos::{LocalBaseProtocol, secure::Secure, util::Utility}; use rnex_rmc::{any::Any, qresult::QResult, response::ErrorCode, rmc_struct}; -use rnex_server::PassthroughInitModule; use rnex_util::{ PID, station_url::{StationUrl, UrlOptions, nat_types::PUBLIC}, }; -use tokio::sync::{Mutex, RwLock}; +use tokio::sync::RwLock; use tracing::info; -use crate::BaseManager; - pub async fn get_station_urls( station_urls: &[StationUrl], addr: SocketAddr, diff --git a/rnex-server-nex-modules/rnex-ds/Cargo.toml b/rnex-server-nex-modules/rnex-ds/Cargo.toml index 1773ae2..53a3777 100644 --- a/rnex-server-nex-modules/rnex-ds/Cargo.toml +++ b/rnex-server-nex-modules/rnex-ds/Cargo.toml @@ -23,7 +23,21 @@ urlencoding = "2.1.3" futures = "0.3.32" [features] -datastore = [] +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] +nx = [] +third-notif-param = [] +v3-3-2 = [] +v3-4-0 = ["v3-3-2", "third-notif-param"] +v3-5-0 = ["v3-4-0"] +v3-8-15 = ["v3-5-0"] +v3-10-22 = ["v3-8-15"] +v4-3-11 = ["v3-8-15"] +friends = [] +rmc_struct_header = [] +big_pid = [] + [lints] workspace = true diff --git a/rnex-server-nex-modules/rnex-fpd/Cargo.toml b/rnex-server-nex-modules/rnex-fpd/Cargo.toml index 8a5f0ea..9679b2a 100644 --- a/rnex-server-nex-modules/rnex-fpd/Cargo.toml +++ b/rnex-server-nex-modules/rnex-fpd/Cargo.toml @@ -22,7 +22,21 @@ hex = "0.4.3" thiserror = "2.0.18" [features] -friends = [] +rmc_struct_header = [] +guest_login = [] +friends = ["guest_login", "database-support"] +big_pid = [] +third-notif-param = [] +v3-3-2 = [] +v3-4-0 = ["v3-3-2", "third-notif-param", "rmc_struct_header"] +v3-5-0 = ["v3-4-0"] +v3-8-15 = ["v3-5-0"] +v3-10-22 = ["v3-8-15"] +v4-3-11 = ["v3-8-15"] +nx = ["big_pid"] +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] [lints] workspace = true diff --git a/rnex-server-nex-modules/rnex-mm/Cargo.toml b/rnex-server-nex-modules/rnex-mm/Cargo.toml index 68d3ce1..37c1cbc 100644 --- a/rnex-server-nex-modules/rnex-mm/Cargo.toml +++ b/rnex-server-nex-modules/rnex-mm/Cargo.toml @@ -34,5 +34,6 @@ nx = ["big_pid"] splatoon = ["v3-5-0"] datastore = ["database-support", "v3-8-15"] database-support = [] + [lints] workspace = true diff --git a/rnex-server-nex-modules/rnex-mm/src/user.rs b/rnex-server-nex-modules/rnex-mm/src/user.rs index e7e0f5d..0dcc8f4 100644 --- a/rnex-server-nex-modules/rnex-mm/src/user.rs +++ b/rnex-server-nex-modules/rnex-mm/src/user.rs @@ -1,4 +1,4 @@ -use std::{env, sync::Arc}; +use std::sync::Arc; use rnex_base::user::BaseUser; use rnex_base_protos::ResultsRange; @@ -24,7 +24,7 @@ use rnex_util::{ station_url::{StationUrl, UrlOptions}, }; use tokio::sync::Mutex; -use tracing::{error, info}; +use tracing::info; use crate::matchmake::{ExtendedMatchmakeSession, MatchmakeManager}; @@ -666,8 +666,8 @@ impl NatTraversal for MatchmakeUser { async fn report_nat_traversal_result( &self, - cid: u32, - result: bool, + _cid: u32, + _result: bool, _rtt: u32, ) -> Result<(), ErrorCode> { Ok(()) diff --git a/rnex-server-nex-modules/rnex-msg/Cargo.toml b/rnex-server-nex-modules/rnex-msg/Cargo.toml index e9fda6d..f07de7c 100644 --- a/rnex-server-nex-modules/rnex-msg/Cargo.toml +++ b/rnex-server-nex-modules/rnex-msg/Cargo.toml @@ -3,10 +3,28 @@ name = "rnex-msg" version = "0.1.0" edition = "2024" +[features] +rmc_struct_header = [] +guest_login = [] +friends = ["guest_login", "database-support"] +big_pid = [] +third-notif-param = [] +v3-3-2 = [] +v3-4-0 = ["v3-3-2", "third-notif-param", "rmc_struct_header"] +v3-5-0 = ["v3-4-0"] +v3-8-15 = ["v3-5-0"] +v3-10-22 = ["v3-8-15"] +v4-3-11 = ["v3-8-15"] +nx = ["big_pid"] +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] + [dependencies] rnex-rmc = { path = "../../rnex-rmc" } rnex-msg-protos = { path = "../../rnex-protocols/msg-protos" } rnex-server = { path = "../../rnex-server" } tokio = { version = "1.52.3", features = ["sync"] } + [lints] workspace = true diff --git a/rnex-server-nex-modules/rnex-msg/src/lib.rs b/rnex-server-nex-modules/rnex-msg/src/lib.rs index 5b9a17e..96ecd68 100644 --- a/rnex-server-nex-modules/rnex-msg/src/lib.rs +++ b/rnex-server-nex-modules/rnex-msg/src/lib.rs @@ -22,7 +22,7 @@ impl RnexManager for MessagingManager { async fn init_new_user( this: rnex_server::PassthroughInitModule, - mod_holder: &rnex_server::ModuleHolder, + _mod_holder: &rnex_server::ModuleHolder, remote: &rnex_rmc::RmcConnection, init_data: &Self::InitData, weak_user: rnex_server::WeakPassthroughInitModule, diff --git a/rnex-server-nex-modules/rnex-node-holder/Cargo.toml b/rnex-server-nex-modules/rnex-node-holder/Cargo.toml index 35a6cb0..453d4c8 100644 --- a/rnex-server-nex-modules/rnex-node-holder/Cargo.toml +++ b/rnex-server-nex-modules/rnex-node-holder/Cargo.toml @@ -3,10 +3,28 @@ name = "rnex-node-holder" version = "0.1.0" edition = "2024" +[features] +rmc_struct_header = [] +guest_login = [] +friends = ["guest_login", "database-support"] +big_pid = [] +third-notif-param = [] +v3-3-2 = [] +v3-4-0 = ["v3-3-2", "third-notif-param", "rmc_struct_header"] +v3-5-0 = ["v3-4-0"] +v3-8-15 = ["v3-5-0"] +v3-10-22 = ["v3-8-15"] +v4-3-11 = ["v3-8-15"] +nx = ["big_pid"] +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] + [dependencies] rnex-rmc = { path = "../../rnex-rmc" } rnex-reggie-protos = { path = "../../rnex-protocols/reggie-protos" } rnex-server = { path = "../../rnex-server" } tokio = { version = "1.52.3", features = ["sync"] } + [lints] workspace = true diff --git a/rnex-server-nex-modules/rnex-node-holder/src/lib.rs b/rnex-server-nex-modules/rnex-node-holder/src/lib.rs index efe343b..eb880bf 100644 --- a/rnex-server-nex-modules/rnex-node-holder/src/lib.rs +++ b/rnex-server-nex-modules/rnex-node-holder/src/lib.rs @@ -1,15 +1,15 @@ use std::{ convert::Infallible, - net::{Ipv4Addr, SocketAddr, SocketAddrV4}, + net::{Ipv4Addr, SocketAddrV4}, sync::{Arc, Weak}, }; use rnex_reggie_protos::reggie::{ - EdgeNodeHolderConnectOption, EdgeNodeManagement, LocalEdgeNodeHolder, RemoteEdgeNodeHolder, + EdgeNodeHolderConnectOption, EdgeNodeManagement, LocalEdgeNodeHolder, }; -use rnex_rmc::{response::ErrorCode, rmc_struct, tracing::info}; +use rnex_rmc::{response::ErrorCode, rmc_struct}; use rnex_server::{ - ConnectionInitData, PassthroughInitModule, RnexManager, RnexModule, WeakPassthroughInitModule, + PassthroughInitModule, RnexManager, RnexModule, WeakPassthroughInitModule, }; use tokio::sync::RwLock; @@ -49,8 +49,8 @@ impl RnexManager for NodeHolderManager { type InitData = EdgeNodeHolderConnectOption; async fn init_new_user( this: PassthroughInitModule, - mod_holder: &rnex_server::ModuleHolder, - remote: &rnex_rmc::RmcConnection, + _mod_holder: &rnex_server::ModuleHolder, + _remote: &rnex_rmc::RmcConnection, init_data: &Self::InitData, _: WeakPassthroughInitModule, ) -> Self::User { diff --git a/rnex-server-nex-modules/rnex-rk/Cargo.toml b/rnex-server-nex-modules/rnex-rk/Cargo.toml index 9b8e99b..be1ee7a 100644 --- a/rnex-server-nex-modules/rnex-rk/Cargo.toml +++ b/rnex-server-nex-modules/rnex-rk/Cargo.toml @@ -3,6 +3,23 @@ name = "rnex-rk" version = "0.1.0" edition = "2024" +[features] +rmc_struct_header = [] +guest_login = [] +friends = ["guest_login", "database-support"] +big_pid = [] +third-notif-param = [] +v3-3-2 = [] +v3-4-0 = ["v3-3-2", "third-notif-param", "rmc_struct_header"] +v3-5-0 = ["v3-4-0"] +v3-8-15 = ["v3-5-0"] +v3-10-22 = ["v3-8-15"] +v4-3-11 = ["v3-8-15"] +nx = ["big_pid"] +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] + [dependencies] rnex-rmc = { path = "../../rnex-rmc" } rnex-util = { path = "../../rnex-util" } diff --git a/rnex-server-nex-modules/rnex-rk/src/lib.rs b/rnex-server-nex-modules/rnex-rk/src/lib.rs index 855c53e..9e9cc90 100644 --- a/rnex-server-nex-modules/rnex-rk/src/lib.rs +++ b/rnex-server-nex-modules/rnex-rk/src/lib.rs @@ -9,6 +9,7 @@ use crate::user::RankingUser; pub mod user; +#[derive(Debug)] pub struct RankingManager { rnex_result_get: String, rnex_result_votes_get: String, diff --git a/rnex-server-nex-modules/rnex-rk/src/user.rs b/rnex-server-nex-modules/rnex-rk/src/user.rs index 279bb9f..71ff6b6 100644 --- a/rnex-server-nex-modules/rnex-rk/src/user.rs +++ b/rnex-server-nex-modules/rnex-rk/src/user.rs @@ -9,11 +9,11 @@ use rnex_rmc::{qbuffer::QBuffer, response::ErrorCode, rmc_struct}; use rnex_server::PassthroughInitModule; use rnex_util::{PID, date_time::DateTime}; use serde::{Deserialize, Serialize}; -use std::{env, str::FromStr}; use tracing::{error, info}; use crate::RankingManager; +#[derive(Debug)] #[rmc_struct(RankingProtocol)] pub struct RankingUser { pub rm: PassthroughInitModule, diff --git a/rnex-server/Cargo.toml b/rnex-server/Cargo.toml index bcdcf31..efb991d 100644 --- a/rnex-server/Cargo.toml +++ b/rnex-server/Cargo.toml @@ -15,5 +15,21 @@ tokio = { version = "1.52.3", features = ["net"] } tracing = "0.1.44" tracing-subscriber = "0.3.23" +[features] +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] +nx = [] +third-notif-param = [] +v3-3-2 = [] +v3-4-0 = ["v3-3-2", "third-notif-param"] +v3-5-0 = ["v3-4-0"] +v3-8-15 = ["v3-5-0"] +v3-10-22 = ["v3-8-15"] +v4-3-11 = ["v3-8-15"] +friends = [] +rmc_struct_header = [] +big_pid = [] + [lints] workspace = true diff --git a/rnex-server/backend-auth/Cargo.toml b/rnex-server/backend-auth/Cargo.toml index 4de678f..35af07a 100644 --- a/rnex-server/backend-auth/Cargo.toml +++ b/rnex-server/backend-auth/Cargo.toml @@ -4,7 +4,20 @@ version = "0.1.0" edition = "2024" [features] +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] +nx = [] +third-notif-param = [] +v3-3-2 = [] +v3-4-0 = ["v3-3-2", "third-notif-param"] +v3-5-0 = ["v3-4-0"] +v3-8-15 = ["v3-5-0"] +v3-10-22 = ["v3-8-15"] +v4-3-11 = ["v3-8-15"] friends = [] +rmc_struct_header = [] +big_pid = [] [dependencies] rnex-server = {path = ".."} diff --git a/rnex-server/backend-node-holder/Cargo.toml b/rnex-server/backend-node-holder/Cargo.toml index 85a7f89..edb9693 100644 --- a/rnex-server/backend-node-holder/Cargo.toml +++ b/rnex-server/backend-node-holder/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "node-holder-backend" +name = "rnex-server-backend-node-holder" version = "0.1.0" edition = "2024" @@ -8,3 +8,19 @@ rnex-server = {path = ".."} rnex-node-holder = {path = "../../rnex-server-nex-modules/rnex-node-holder"} rnex-reggie-protos = { path = "../../rnex-protocols/reggie-protos" } tokio = { version = "1.52.3", features = ["rt-multi-thread"] } + +[features] +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] +nx = [] +third-notif-param = [] +v3-3-2 = [] +v3-4-0 = ["v3-3-2", "third-notif-param"] +v3-5-0 = ["v3-4-0"] +v3-8-15 = ["v3-5-0"] +v3-10-22 = ["v3-8-15"] +v4-3-11 = ["v3-8-15"] +friends = [] +rmc_struct_header = [] +big_pid = [] diff --git a/rnex-server/backend-secure/Cargo.toml b/rnex-server/backend-secure/Cargo.toml index 42b3e54..cf56dce 100644 --- a/rnex-server/backend-secure/Cargo.toml +++ b/rnex-server/backend-secure/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "backend-secure" +name = "rnex-server-backend-secure" version = "0.1.0" edition = "2024" @@ -19,3 +19,13 @@ datastore = ["dep:rnex-ds"] friends = ["dep:rnex-fpd"] messaging = ["dep:rnex-msg"] ranking = ["dep:rnex-rk"] +nx = [] +third-notif-param = [] +v3-3-2 = [] +v3-4-0 = ["v3-3-2", "third-notif-param"] +v3-5-0 = ["v3-4-0"] +v3-8-15 = ["v3-5-0"] +v3-10-22 = ["v3-8-15"] +v4-3-11 = ["v3-8-15"] +rmc_struct_header = [] +big_pid = [] diff --git a/rnex-util/Cargo.toml b/rnex-util/Cargo.toml index 7928fdf..60d8f18 100644 --- a/rnex-util/Cargo.toml +++ b/rnex-util/Cargo.toml @@ -13,7 +13,21 @@ thiserror = "2.0.18" nex-account = { version = "0.2.4", registry = "spbr" } [features] -nx = [] +rmc_struct_header = [] +guest_login = [] +friends = ["guest_login", "database-support"] +big_pid = [] +third-notif-param = [] +v3-3-2 = [] +v3-4-0 = ["v3-3-2", "third-notif-param", "rmc_struct_header"] +v3-5-0 = ["v3-4-0"] +v3-8-15 = ["v3-5-0"] +v3-10-22 = ["v3-8-15"] +v4-3-11 = ["v3-8-15"] +nx = ["big_pid"] +splatoon = ["v3-5-0"] +datastore = ["database-support", "v3-8-15"] +database-support = [] [lints] workspace = true