Я пытаюсь открыть xfreerdp, если сертификат не установлен. Если я пользуюсь / cert-ignore, он работает отлично. Но появится всплывающее окно с сообщением, где пользователь может решить, хочет он доверять или нет. Проблема в том, что xfreerdp отправляет данные хоста для неизвестного хоста. Теперь я отправлю сообщение пользователю, и если он доверяет серверу, 'x' должно быть отправлено на xfreerdp.
Вот мой код:
p = sp.Popen(["xfreerdp /u:" + str(us) + " /p:" + str(ps) + " /v:" + str(ip) + " /f /monitors:" + str(curr_screen) + ""], stdout=sp.PIPE, stderr=sp.PIPE, stdin=sp.PIPE, shell=True)
out, err = p.communicate()
if "ERRCONNECT_LOGON_FAILURE" in str(err):
msg = "Login failed!\nCheck Username and Passsword"
MessageBox(msg, "error")
elif "Certificate details for" in str(out):
if mb.askyesno("WARNING: CERTIFICATE NAME MISMATCH!", "Do you trust the host: " + str(ip)):
p.communicate(input=b'y\n')
else:
msg = "Connection canceld!"
MessageBox(msg, "error")
Как я могу отправьте 'y', чтобы xfreerdp продолжил.
Спасибо