Guard + copy

This commit is contained in:
Max Goedjen 2021-12-21 21:21:05 -08:00
parent cda56ea14b
commit e880e32ce9
No known key found for this signature in database
GPG Key ID: E58C21DD77B9B8E8

View File

@ -23,8 +23,8 @@ extension Agent {
public func handle(reader: FileHandleReader, writer: FileHandleWriter) { public func handle(reader: FileHandleReader, writer: FileHandleWriter) {
Logger().debug("Agent handling new data") Logger().debug("Agent handling new data")
let data = reader.availableData let data = Data(reader.availableData)
guard !data.isEmpty else { return } guard data.count > 5 else { return }
let requestTypeInt = data[4] let requestTypeInt = data[4]
guard let requestType = SSHAgent.RequestType(rawValue: requestTypeInt) else { guard let requestType = SSHAgent.RequestType(rawValue: requestTypeInt) else {
writer.write(OpenSSHKeyWriter().lengthAndData(of: SSHAgent.ResponseType.agentFailure.data)) writer.write(OpenSSHKeyWriter().lengthAndData(of: SSHAgent.ResponseType.agentFailure.data))