mirror of
https://github.com/maziggy/bambuddy.git
synced 2026-09-30 19:21:33 +02:00
When the slicer and printer are on different VLANs, Bambu Studio could
not send prints through the proxy because the printer's real IP leaked
through MQTT payloads, the bind protocol forwarded the real printer's
identity, the port 6000 file transfer tunnel was not proxied, and FTP
data connections raced the TLS handshake on zero-byte uploads.
- Rewrite IP addresses in MQTT PUBLISH payloads (string + integer)
with proper packet framing and cross-chunk buffering
- Respond to bind/detect with VP identity via BindServer
- Add TLS proxy for port 6000 (file transfer tunnel)
- Buffer slicer FTP data during printer connection setup
- Advertise configured VP name in SSDP proxy
- Add cross-subnet SSDP wildcard listener for VPN setups
- Register UserEmailPreference model in models/__init__.py
- Add 11 unit tests for MQTT rewrite, IP conversion, SSDP name
65 lines
2.3 KiB
Python
65 lines
2.3 KiB
Python
from backend.app.models.ams_history import AMSSensorHistory
|
|
from backend.app.models.ams_label import AmsLabel
|
|
from backend.app.models.api_key import APIKey
|
|
from backend.app.models.archive import PrintArchive
|
|
from backend.app.models.color_catalog import ColorCatalogEntry
|
|
from backend.app.models.filament import Filament
|
|
from backend.app.models.github_backup import GitHubBackupConfig, GitHubBackupLog
|
|
from backend.app.models.group import Group, user_groups
|
|
from backend.app.models.kprofile_note import KProfileNote
|
|
from backend.app.models.library import LibraryFile, LibraryFolder
|
|
from backend.app.models.local_preset import LocalPreset
|
|
from backend.app.models.maintenance import MaintenanceHistory, MaintenanceType, PrinterMaintenance
|
|
from backend.app.models.notification import NotificationLog
|
|
from backend.app.models.notification_template import NotificationTemplate
|
|
from backend.app.models.orca_base_cache import OrcaBaseProfile
|
|
from backend.app.models.pending_upload import PendingUpload
|
|
from backend.app.models.printer import Printer
|
|
from backend.app.models.project import Project
|
|
from backend.app.models.settings import Settings
|
|
from backend.app.models.smart_plug import SmartPlug
|
|
from backend.app.models.spool import Spool
|
|
from backend.app.models.spool_assignment import SpoolAssignment
|
|
from backend.app.models.spool_catalog import SpoolCatalogEntry
|
|
from backend.app.models.spool_k_profile import SpoolKProfile
|
|
from backend.app.models.spool_usage_history import SpoolUsageHistory
|
|
from backend.app.models.spoolbuddy_device import SpoolBuddyDevice
|
|
from backend.app.models.user import User
|
|
from backend.app.models.user_email_pref import UserEmailPreference
|
|
|
|
__all__ = [
|
|
"Printer",
|
|
"PrintArchive",
|
|
"Filament",
|
|
"Settings",
|
|
"SmartPlug",
|
|
"MaintenanceType",
|
|
"PrinterMaintenance",
|
|
"MaintenanceHistory",
|
|
"KProfileNote",
|
|
"NotificationTemplate",
|
|
"NotificationLog",
|
|
"Project",
|
|
"APIKey",
|
|
"AMSSensorHistory",
|
|
"AmsLabel",
|
|
"PendingUpload",
|
|
"LibraryFolder",
|
|
"LibraryFile",
|
|
"User",
|
|
"Group",
|
|
"user_groups",
|
|
"GitHubBackupConfig",
|
|
"GitHubBackupLog",
|
|
"LocalPreset",
|
|
"OrcaBaseProfile",
|
|
"Spool",
|
|
"SpoolKProfile",
|
|
"SpoolAssignment",
|
|
"SpoolCatalogEntry",
|
|
"SpoolUsageHistory",
|
|
"ColorCatalogEntry",
|
|
"SpoolBuddyDevice",
|
|
"UserEmailPreference",
|
|
]
|