Я хочу отправить команду ehlo, чтобы получить ответ от сервера smtp, без использования сторонней библиотеки.Я использую TCP-потоки для соединения с сокетом.Поэтому я хочу знать, например, как я могу отправить команду 'EHLO' на сервер и получить ответ.
class Connection: NSObject {
static let shared = Connection()
private var inputStream: InputStream!
private var outputStream: OutputStream!
private let maxReadLength = 4096
func setupServerCommunication() {
var readStream: Unmanaged<CFReadStream>?
var writeStream: Unmanaged<CFWriteStream>?
let host = "domain_name" as CFString
CFStreamCreatePairWithSocketToHost(kCFAllocatorDefault, host, 25, &readStream, &writeStream)
inputStream = readStream!.takeRetainedValue()
outputStream = writeStream!.takeRetainedValue()
inputStream.schedule(in: .current, forMode: .commonModes)
outputStream.schedule(in: .current, forMode: .commonModes)
inputStream.open()
inputStream.delegate = self
outputStream.open()
}
func quitSession() {
inputStream.close()
outputStream.close()
inputStream.remove(from: .current, forMode: .commonModes)
outputStream.remove(from: .current, forMode: .commonModes)
inputStream = nil
outputStream = nil
}
}