             return
         }
 
-        internalStatus = .readingVersionIdentifierAndNumberOfMethods
+        readStatus = .readingVersionIdentifierAndNumberOfMethods
         socket.readDataTo(length: 2)
-    }
-
-    public override func write(data: Data) {
-        switch internalStatus {
-        case .waitingToForward:
-            internalStatus = .forwarding
-        default:
-            break
-        }
-
-        super.write(data: data)
     }
 
     // swiftlint:disable function_body_length

                return "IPv6 address"
            case .readingPort:
                return "reading port"
            case .waitingAdapter:
                return "waiting adapter"
            case .sendingResponse:
                return "sending response"
            case .waitingToForward:
                return "waiting to begin forwarding data"
            case .forwarding:
                return "forwarding"
            case .stopped:

        responseBytes[0...3] = [0x05, 0x00, 0x00, 0x01]
        let responseData = Data(bytes: responseBytes)

        writeStatus = .sendingResponse
        write(data: responseData)
    }
}
