remoteRF-server 1.4.10__tar.gz → 1.7.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/PKG-INFO +7 -5
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/README.md +3 -3
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/pyproject.toml +4 -2
- remoterf_server-1.7.3/src/remoteRF_server/common/grpc/grpc_host_pb2.py +20 -0
- remoterf_server-1.7.3/src/remoteRF_server/common/grpc/grpc_host_pb2_grpc.py +20 -0
- remoterf_server-1.7.3/src/remoteRF_server/common/grpc/grpc_pb2.py +20 -0
- remoterf_server-1.7.3/src/remoteRF_server/common/grpc/grpc_pb2_grpc.py +20 -0
- remoterf_server-1.7.3/src/remoteRF_server/common/grpc/v2_codec.py +20 -0
- remoterf_server-1.7.3/src/remoteRF_server/common/idl/pluto_mimo_schema.py +20 -0
- remoterf_server-1.7.3/src/remoteRF_server/common/idl/pluto_schema.py +20 -0
- remoterf_server-1.7.3/src/remoteRF_server/common/idl/schema.py +24 -0
- remoterf_server-1.4.10/src/remoteRF_server/common/idl/pluto_mimo_schema.py → remoterf_server-1.7.3/src/remoteRF_server/common/idl/v2.py +4 -5
- remoterf_server-1.7.3/src/remoteRF_server/common/utils/ansi_codes.py +20 -0
- remoterf_server-1.7.3/src/remoteRF_server/common/utils/process_arg.py +20 -0
- remoterf_server-1.7.3/src/remoteRF_server/drivers/adalm_pluto/pluto_mimo_schema.py +20 -0
- remoterf_server-1.7.3/src/remoteRF_server/drivers/adalm_pluto/pluto_schema.py +20 -0
- remoterf_server-1.7.3/src/remoteRF_server/drivers/adalm_pluto/poe.py +20 -0
- remoterf_server-1.7.3/src/remoteRF_server/drivers/hackrf/hackrf_schema.py +20 -0
- remoterf_server-1.7.3/src/remoteRF_server/drivers/rtl_sdr/rtl_sdr_schema.py +20 -0
- remoterf_server-1.7.3/src/remoteRF_server/drivers/ti_mmwave/ti_mmwave_schema.py +20 -0
- remoterf_server-1.7.3/src/remoteRF_server/drivers/usrp/policy.py +20 -0
- remoterf_server-1.7.3/src/remoteRF_server/drivers/usrp/profiles.py +20 -0
- remoterf_server-1.7.3/src/remoteRF_server/drivers/usrp/uhd_manifest.py +20 -0
- remoterf_server-1.7.3/src/remoteRF_server/drivers/usrp/usrp_schema.py +20 -0
- remoterf_server-1.7.3/src/remoteRF_server/drivers/usrp_phaser/usrp_phaser_schema.py +20 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/host/host_tunnel_server.py +387 -6
- remoterf_server-1.7.3/src/remoteRF_server/remote_admin_shell.py +347 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/acc_perms.py +4 -2
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/commands.py +42 -13
- remoterf_server-1.7.3/src/remoteRF_server/server/control.py +212 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/device_manager.py +46 -5
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/direct_path.py +5 -181
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/federation/__init__.py +2 -2
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/federation/cli.py +16 -17
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/federation/cluster.py +67 -15
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/federation/devices.py +29 -5
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/federation/enrollment.py +147 -11
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/federation/home_devices.py +1 -1
- remoterf_server-1.7.3/src/remoteRF_server/server/federation/links.py +83 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/federation/permissions.py +4 -1
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/global_onboarding.py +48 -18
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/grpc_server.py +58 -25
- remoterf_server-1.7.3/src/remoteRF_server/server/host_direct.py +320 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/host_dynamic_v2.py +61 -2
- remoterf_server-1.7.3/src/remoteRF_server/server/remote_admin.py +772 -0
- remoterf_server-1.7.3/src/remoteRF_server/server/remote_admin_ssh.py +553 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/reservation.py +192 -20
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/rpc_manager.py +19 -3
- remoterf_server-1.7.3/src/remoteRF_server/server/schema_registry.py +171 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/user_group_cli.py +5 -4
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/user_group_handler.py +29 -5
- remoterf_server-1.7.3/src/remoteRF_server/server/v2_errors.py +20 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/serverrf_cli.py +7 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server.egg-info/PKG-INFO +7 -5
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server.egg-info/SOURCES.txt +12 -2
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server.egg-info/requires.txt +3 -1
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_client_sessions.py +22 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_cluster.py +25 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_deployment_capabilities.py +2 -1
- remoterf_server-1.7.3/tests/test_device_core_aliases.py +55 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_diag.py +14 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_federation_edges.py +23 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_gate_e_proto.py +1 -1
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_gate_h_devices.py +50 -3
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_global_home.py +14 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_global_onboarding.py +5 -4
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_home_device_plane.py +1 -1
- remoterf_server-1.7.3/tests/test_host_direct.py +586 -0
- remoterf_server-1.7.3/tests/test_host_dynamic_v2.py +309 -0
- remoterf_server-1.7.3/tests/test_lab_logins.py +252 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_proxy_lifecycle.py +1 -1
- remoterf_server-1.7.3/tests/test_remote_admin.py +650 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_reservation_handoff.py +25 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_reservation_policy_b.py +7 -0
- remoterf_server-1.7.3/tests/test_rpc_manager_host_legacy.py +49 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_rpc_manager_rx_n.py +1 -1
- remoterf_server-1.7.3/tests/test_schema_registry.py +79 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_soak_federation.py +14 -7
- remoterf_server-1.4.10/src/remoteRF_server/common/grpc/grpc.proto +0 -237
- remoterf_server-1.4.10/src/remoteRF_server/common/grpc/grpc_host.proto +0 -118
- remoterf_server-1.4.10/src/remoteRF_server/common/grpc/grpc_host_pb2.py +0 -78
- remoterf_server-1.4.10/src/remoteRF_server/common/grpc/grpc_host_pb2_grpc.py +0 -112
- remoterf_server-1.4.10/src/remoteRF_server/common/grpc/grpc_pb2.py +0 -116
- remoterf_server-1.4.10/src/remoteRF_server/common/grpc/grpc_pb2_grpc.py +0 -477
- remoterf_server-1.4.10/src/remoteRF_server/common/grpc/v2_codec.py +0 -146
- remoterf_server-1.4.10/src/remoteRF_server/common/idl/pluto_schema.py +0 -445
- remoterf_server-1.4.10/src/remoteRF_server/common/idl/schema.py +0 -1144
- remoterf_server-1.4.10/src/remoteRF_server/common/idl/v2.py +0 -311
- remoterf_server-1.4.10/src/remoteRF_server/common/utils/ansi_codes.py +0 -135
- remoterf_server-1.4.10/src/remoteRF_server/common/utils/process_arg.py +0 -246
- remoterf_server-1.4.10/src/remoteRF_server/drivers/adalm_pluto/pluto_mimo_schema.py +0 -231
- remoterf_server-1.4.10/src/remoteRF_server/drivers/adalm_pluto/pluto_schema.py +0 -445
- remoterf_server-1.4.10/src/remoteRF_server/drivers/adalm_pluto/poe.py +0 -255
- remoterf_server-1.4.10/src/remoteRF_server/drivers/hackrf/hackrf_schema.py +0 -448
- remoterf_server-1.4.10/src/remoteRF_server/drivers/rtl_sdr/rtl_sdr_schema.py +0 -351
- remoterf_server-1.4.10/src/remoteRF_server/drivers/ti_mmwave/ti_mmwave_schema.py +0 -667
- remoterf_server-1.4.10/src/remoteRF_server/drivers/usrp/policy.py +0 -56
- remoterf_server-1.4.10/src/remoteRF_server/drivers/usrp/profiles.py +0 -366
- remoterf_server-1.4.10/src/remoteRF_server/drivers/usrp/uhd_manifest.py +0 -1666
- remoterf_server-1.4.10/src/remoteRF_server/drivers/usrp/usrp_schema.py +0 -1174
- remoterf_server-1.4.10/src/remoteRF_server/drivers/usrp_phaser/usrp_phaser_schema.py +0 -556
- remoterf_server-1.4.10/src/remoteRF_server/server/control.py +0 -139
- remoterf_server-1.4.10/src/remoteRF_server/server/v2_errors.py +0 -114
- remoterf_server-1.4.10/tests/test_host_dynamic_v2.py +0 -160
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/LICENSE +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/setup.cfg +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/__init__.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/common/__init__.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/common/grpc/__init__.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/common/grpc/deployment_capabilities.proto +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/common/grpc/deployment_capabilities_pb2.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/common/grpc/deployment_capabilities_pb2_grpc.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/common/grpc/federation.proto +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/common/grpc/federation_pb2.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/common/grpc/federation_pb2_grpc.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/common/idl/__init__.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/common/idl/device_schema.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/common/utils/__init__.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/common/utils/api_token.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/common/utils/db_connection.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/common/utils/db_location.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/common/utils/list_string.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/common/utils/panel.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/drivers/__init__.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/drivers/adalm_pluto/__init__.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/drivers/adalm_pluto/pluto_diag.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/drivers/adalm_pluto/pluto_remote_server.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/drivers/bluetooth_diag.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/drivers/gps_diag.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/drivers/hackrf/__init__.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/drivers/rtl_sdr/__init__.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/drivers/rtl_sdr/rtl_sdr_diag.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/drivers/ti_mmwave/__init__.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/drivers/usrp/__init__.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/drivers/usrp/usrp_diag.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/drivers/usrp_phaser/__init__.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/host/__init__.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/host/host_auth_token.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/host/host_directory_store.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/__init__.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/cert_provider.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/console.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/deployment/__init__.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/deployment/capabilities.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/diag.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/dynamic_v2.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/dynamic_v2_bridge.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/federation/admin.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/federation/contracts.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/federation/destination.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/federation/global_home.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/federation/home.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/federation/identity.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/federation/legacy_state.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/federation/migrations.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/federation/peers.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/federation/principals.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/federation/runtime.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/federation/trust.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/server/startup_check.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/tools/__init__.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/tools/gen_certs.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/tools/gist_status.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/tools/gist_status_testing.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server/tools/introspect_uhd.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server.egg-info/dependency_links.txt +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server.egg-info/entry_points.txt +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/src/remoteRF_server.egg-info/top_level.txt +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_account_hardening.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_account_names.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_account_removal.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_activity_log.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_availability.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_bind_host.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_cert_provider.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_commands.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_console.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_contrib_drivers.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_default_rtl_sdr_schema.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_default_usrp_schema.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_detached_device_rpc.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_device_handles.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_device_init.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_devices_add_wizard.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_devices_list.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_direct_fixed_port.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_direct_path_server.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_dynamic_v2.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_federated_direct_path.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_federated_dynamic_v2.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_first_run.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_gate_d_contracts.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_gate_e_federation.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_gate_f_enrollment.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_gate_g1_logging.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_gate_g_permissions.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_gate_i_direct_path.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_gen_certs.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_global_accounts_migration.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_global_v1_disposal.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_hackrf_schema.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_host_directory_store.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_idl_schema.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_panel.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_peer_transport.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_pluto_compat.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_pluto_poe.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_process_arg.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_reservation_timestamps.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_rpc_manager_batch.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_rpc_manager_calln.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_rtl_sdr_schema.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_startup_check.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_status_push.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_ti_mmwave_hardware.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_ti_mmwave_schema.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_user_group_cli.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_usrp_b205mini_uhd410_hardware.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_usrp_client_server_hardware.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_usrp_client_server_localhost.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_usrp_n210_client_server_hardware.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_usrp_preload.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_usrp_profiles.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_usrp_remoterf_rx_hardware.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_usrp_uhd410_hardware.py +0 -0
- {remoterf_server-1.4.10 → remoterf_server-1.7.3}/tests/test_wipe.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: remoteRF-server
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.7.3
|
|
4
4
|
Summary: RemoteRF server-side control package
|
|
5
5
|
License: GPL-3.0-or-later
|
|
6
6
|
Classifier: Programming Language :: Python :: 3
|
|
@@ -9,7 +9,8 @@ Classifier: Operating System :: OS Independent
|
|
|
9
9
|
Requires-Python: >=3.10
|
|
10
10
|
Description-Content-Type: text/markdown
|
|
11
11
|
License-File: LICENSE
|
|
12
|
-
Requires-Dist: remoterf-federation-core==0.
|
|
12
|
+
Requires-Dist: remoterf-federation-core==0.22.0
|
|
13
|
+
Requires-Dist: remoterf-device-core==0.1.0
|
|
13
14
|
Requires-Dist: grpcio<2.0.0,>=1.81.1
|
|
14
15
|
Requires-Dist: protobuf<7.0.0,>=6.33.5
|
|
15
16
|
Requires-Dist: numpy
|
|
@@ -27,6 +28,7 @@ Requires-Dist: pyjwt<3.0,>=2.8
|
|
|
27
28
|
Requires-Dist: cryptography<44,>=42
|
|
28
29
|
Requires-Dist: aioice<0.11,>=0.10
|
|
29
30
|
Requires-Dist: aioquic<2.0,>=1.2
|
|
31
|
+
Requires-Dist: paramiko<6,>=3.4
|
|
30
32
|
Dynamic: license-file
|
|
31
33
|
|
|
32
34
|
# Remote RF Server Guide (Linux)
|
|
@@ -257,7 +259,7 @@ You most likely will need to port forward, etc.
|
|
|
257
259
|
Troubleshooting:
|
|
258
260
|
Some distros come with default firewall settings that block traffic on specific ports. Make sure that your firewall settings permit traffic to and from the server. Depending on the setup, you may also have ISP firewalls.
|
|
259
261
|
|
|
260
|
-
## RemoteRF federation
|
|
262
|
+
## RemoteRF federation Phase 1
|
|
261
263
|
|
|
262
264
|
The `global-dev` branch implements the development-only Phase-1 federation
|
|
263
265
|
boundary. A Server can issue and verify participant-signed
|
|
@@ -881,11 +883,11 @@ After running `serverrf --serve`, you’ll enter the **RemoteRF Server Shell**.
|
|
|
881
883
|
|
|
882
884
|
### Users
|
|
883
885
|
|
|
884
|
-
* `users list` — List all accounts (this
|
|
886
|
+
* `users list` — List all accounts (this deployment's own first, then visitors from partner deployments)
|
|
885
887
|
* `users manage` — Manage a specific user (perms / delete / reservations)
|
|
886
888
|
* `users purge` — Delete **all** users
|
|
887
889
|
* `users perms` — Show permissions table
|
|
888
|
-
* `users prune-proxies [--stale DAYS] [-y]` — List federated proxies whose home
|
|
890
|
+
* `users prune-proxies [--stale DAYS] [-y]` — List federated proxies whose home deployment is gone (dry run); `-y` removes them
|
|
889
891
|
|
|
890
892
|
---
|
|
891
893
|
|
|
@@ -226,7 +226,7 @@ You most likely will need to port forward, etc.
|
|
|
226
226
|
Troubleshooting:
|
|
227
227
|
Some distros come with default firewall settings that block traffic on specific ports. Make sure that your firewall settings permit traffic to and from the server. Depending on the setup, you may also have ISP firewalls.
|
|
228
228
|
|
|
229
|
-
## RemoteRF federation
|
|
229
|
+
## RemoteRF federation Phase 1
|
|
230
230
|
|
|
231
231
|
The `global-dev` branch implements the development-only Phase-1 federation
|
|
232
232
|
boundary. A Server can issue and verify participant-signed
|
|
@@ -850,11 +850,11 @@ After running `serverrf --serve`, you’ll enter the **RemoteRF Server Shell**.
|
|
|
850
850
|
|
|
851
851
|
### Users
|
|
852
852
|
|
|
853
|
-
* `users list` — List all accounts (this
|
|
853
|
+
* `users list` — List all accounts (this deployment's own first, then visitors from partner deployments)
|
|
854
854
|
* `users manage` — Manage a specific user (perms / delete / reservations)
|
|
855
855
|
* `users purge` — Delete **all** users
|
|
856
856
|
* `users perms` — Show permissions table
|
|
857
|
-
* `users prune-proxies [--stale DAYS] [-y]` — List federated proxies whose home
|
|
857
|
+
* `users prune-proxies [--stale DAYS] [-y]` — List federated proxies whose home deployment is gone (dry run); `-y` removes them
|
|
858
858
|
|
|
859
859
|
---
|
|
860
860
|
|
|
@@ -4,12 +4,13 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "remoteRF-server"
|
|
7
|
-
version = "1.
|
|
7
|
+
version = "1.7.3"
|
|
8
8
|
description = "RemoteRF server-side control package"
|
|
9
9
|
license = { text = "GPL-3.0-or-later" }
|
|
10
10
|
requires-python = ">=3.10"
|
|
11
11
|
dependencies = [
|
|
12
|
-
"remoterf-federation-core==0.
|
|
12
|
+
"remoterf-federation-core==0.22.0",
|
|
13
|
+
"remoterf-device-core==0.1.0",
|
|
13
14
|
"grpcio>=1.81.1,<2.0.0",
|
|
14
15
|
"protobuf>=6.33.5,<7.0.0",
|
|
15
16
|
"numpy",
|
|
@@ -27,6 +28,7 @@ dependencies = [
|
|
|
27
28
|
"cryptography>=42,<44",
|
|
28
29
|
"aioice>=0.10,<0.11",
|
|
29
30
|
"aioquic>=1.2,<2.0",
|
|
31
|
+
"paramiko>=3.4,<6",
|
|
30
32
|
]
|
|
31
33
|
readme = "README.md"
|
|
32
34
|
classifiers = [
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.grpc.grpc_host_pb2); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.grpc.grpc_host_pb2")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.grpc.grpc_host_pb2_grpc); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.grpc.grpc_host_pb2_grpc")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.grpc.grpc_pb2); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.grpc.grpc_pb2")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.grpc.grpc_pb2_grpc); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.grpc.grpc_pb2_grpc")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.grpc.v2_codec); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.grpc.v2_codec")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.drivers.adalm_pluto.pluto_mimo_schema); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.drivers.adalm_pluto.pluto_mimo_schema")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.drivers.adalm_pluto.pluto_schema); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.drivers.adalm_pluto.pluto_schema")
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.idl.schema); this name stays importable."""
|
|
17
|
+
import sys
|
|
18
|
+
|
|
19
|
+
from remoterf_device_core.idl import schema as _schema
|
|
20
|
+
|
|
21
|
+
from ..utils.db_location import get_drivers_dir
|
|
22
|
+
|
|
23
|
+
_schema.set_drivers_dir_provider(get_drivers_dir)
|
|
24
|
+
sys.modules[__name__] = _schema
|
|
@@ -13,9 +13,8 @@
|
|
|
13
13
|
# You should have received a copy of the GNU General Public License
|
|
14
14
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
15
|
|
|
16
|
-
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.idl.v2); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
17
19
|
|
|
18
|
-
|
|
19
|
-
PlutoMIMOSchema,
|
|
20
|
-
connect_pluto_mimo,
|
|
21
|
-
)
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.idl.v2")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.utils.ansi_codes); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.utils.ansi_codes")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.utils.process_arg); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.utils.process_arg")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.drivers.adalm_pluto.pluto_mimo_schema); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.drivers.adalm_pluto.pluto_mimo_schema")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.drivers.adalm_pluto.pluto_schema); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.drivers.adalm_pluto.pluto_schema")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.drivers.adalm_pluto.poe); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.drivers.adalm_pluto.poe")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.drivers.hackrf.hackrf_schema); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.drivers.hackrf.hackrf_schema")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.drivers.rtl_sdr.rtl_sdr_schema); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.drivers.rtl_sdr.rtl_sdr_schema")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.drivers.ti_mmwave.ti_mmwave_schema); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.drivers.ti_mmwave.ti_mmwave_schema")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.drivers.usrp.policy); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.drivers.usrp.policy")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.drivers.usrp.profiles); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.drivers.usrp.profiles")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.drivers.usrp.uhd_manifest); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.drivers.usrp.uhd_manifest")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.drivers.usrp.usrp_schema); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.drivers.usrp.usrp_schema")
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Copyright (C) 2026 RemoteRF
|
|
2
|
+
#
|
|
3
|
+
# This program is free software: you can redistribute it and/or modify
|
|
4
|
+
# it under the terms of the GNU General Public License as published by
|
|
5
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
6
|
+
# (at your option) any later version.
|
|
7
|
+
#
|
|
8
|
+
# This program is distributed in the hope that it will be useful,
|
|
9
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
10
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
11
|
+
# GNU General Public License for more details.
|
|
12
|
+
#
|
|
13
|
+
# You should have received a copy of the GNU General Public License
|
|
14
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
15
|
+
|
|
16
|
+
"""Lives in remoterf-device-core (remoterf_device_core.drivers.usrp_phaser.usrp_phaser_schema); this name stays importable."""
|
|
17
|
+
import importlib
|
|
18
|
+
import sys
|
|
19
|
+
|
|
20
|
+
sys.modules[__name__] = importlib.import_module("remoterf_device_core.drivers.usrp_phaser.usrp_phaser_schema")
|