PLUGIN ssl
DEFINE
	OPTION ssl.debug -d BLN
	TYPE ssl.context
	STRUCT ssl.context_wrapper
	INSTRUCTION ssl.new STR:certificate STR:privatekey ( 'NOVERIF' | STR:trustedstorefileorpath | PEP { . * } ) -> ssl.context
	STRUCT ssl.tcp
	FUNCTION ssl.device_tcp_open ( > STR:ip STR:port ssl.context | < STR:ip STR:port ) -> $ssl.tcp
	FUNCTION ssl.device_tcp_close $ssl.tcp -> BLN
	FUNCTION ssl.device_tcp_print $ssl.tcp -> STR
	FUNCTION ssl.device_tcp_read $ssl.tcp -> STR ?
	FUNCTION ssl.device_tcp_write $ssl.tcp STR
	FUNCTION ssl.device_tcp_command $ssl.tcp . * -> VALUE ?
