Middle device working but not closing

This commit is contained in:
Owen
2025-12-31 11:22:09 -05:00
parent 6be0958887
commit c85fcc434b

View File

@@ -952,22 +952,20 @@ func StartTunnel(config TunnelConfig) {
logger.Info("Tunnel process context cancelled, cleaning up") logger.Info("Tunnel process context cancelled, cleaning up")
} }
func AddDevice(fd uint32) { func AddDevice(fd uint32) error {
if middleDev == nil { if middleDev == nil {
logger.Error("MiddleDevice is nil, cannot add device") return fmt.Errorf("middle device is not initialized")
return
} }
if tunnelConfig.MTU == 0 { if tunnelConfig.MTU == 0 {
logger.Error("No MTU configured, cannot create device") // error
return return fmt.Errorf("tunnel MTU is not set")
} }
tdev, err := olmDevice.CreateTUNFromFD(fd, tunnelConfig.MTU) tdev, err := olmDevice.CreateTUNFromFD(fd, tunnelConfig.MTU)
if err != nil { if err != nil {
logger.Error("Failed to create TUN device: %v", err) return fmt.Errorf("failed to create TUN device from fd: %v", err)
return
} }
// if config.FileDescriptorTun == 0 { // if config.FileDescriptorTun == 0 {
@@ -977,6 +975,8 @@ func AddDevice(fd uint32) {
// Here we replace the existing TUN device in the middle device with the new one // Here we replace the existing TUN device in the middle device with the new one
middleDev.AddDevice(tdev) middleDev.AddDevice(tdev)
return nil
} }
func Close() { func Close() {