#!/usr/bin/env python
## This file is part of Scapy
## This program is published under a GPLv2 license
"""
Basic TLS client. A ciphersuite may be commanded via a first argument.
Default protocol version is TLS 1.2.
For instance, "sudo ./client_simple.py c014" will try to connect to any TLS
server at 127.0.0.1:4433, with suite TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA.
"""
import os
import sys
basedir = os.path.abspath(os.path.join(os.path.dirname(__file__),"../../"))
sys.path=[basedir]+sys.path
from scapy.layers.tls.automaton_cli import TLSClientAutomaton
from scapy.layers.tls.handshake import TLSClientHello
if len(sys.argv) == 2:
ch = TLSClientHello(ciphers=int(sys.argv[1], 16))
else:
ch = None
t = TLSClientAutomaton(client_hello=ch,
version="tls13-d18",
mycert=basedir+"/test/tls/pki/cli_cert.pem",
mykey=basedir+"/test/tls/pki/cli_key.pem")
t.run()