Description
Attempting to connect a client (whose device key has a pass phrase) to a backend (whose device key has no pass phrase) results in a crash on the client side.
Client side console output:
(rvi@tjamison-Precision-T5610)1> 2016-07-06 16:05:02.517 [error] <0.194.0>@dlink_tls_conn:handle_upgrade:407 Cannot upgrade to TLS: {error,{options,{keyfile,"/usr/lib/rvi_core/priv/keys/device_key.pem",{error,enoent}}}}
Backend side console output:
(rvi@tjamison-VTC1010)1> 16:05:02.833<dlink_tls_listener/101>new_connection(): Peer IP: "0.0.0.0" (ignored)
16:05:02.834<dlink_tls_listener/102>new_connection(): Peer Port: 9007 (ignored)
16:05:02.834<dlink_tls_listener/103>new_connection(): Sock: #Port<0.3501>
16:05:02.898<dlink_tls_conn/67>setup() IP = undefined; Port = 0; Mod = dlink_tls_rpc; Fun = handle_socket
16:05:02.903<dlink_tls_conn/68>CompSpec = {component_spec,[{service_edge_rpc,gen_server,[{json_rpc_address,{"38.129.64.31",9001}},{msgpack_rpc,[{ip,"38.129.64.31"},{port,9021}]},{websocket,[{port,9008}]}]}],[{schedule_rpc,gen_server,[]}],[{service_discovery_rpc,gen_server,[]}],[{authorize_rpc,gen_server,[]}],[{dlink_tls_rpc,gen_server,[{server_opts,[{port,9007},{ping_interval,5000}]}]}],[{proto_msgpack_rpc,gen_server,[]}],[{rvi_log,gen_server,[{json_rpc_address,9009}]}],[{tls_opts,[{port,9007},{ping_interval,5000}]}]}
16:05:02.905<dlink_tls_conn/153>connection:init(): self(): <0.221.0>
16:05:02.906<dlink_tls_conn/154>connection:init(): IP: undefined
16:05:02.906<dlink_tls_conn/155>connection:init(): Port: 0
16:05:02.906<dlink_tls_conn/156>connection:init(): Sock: #Port<0.3501>
16:05:02.906<dlink_tls_conn/157>connection:init(): Module: dlink_tls_rpc
16:05:02.906<dlink_tls_conn/158>connection:init(): Function: handle_socket
16:05:02.907<rvi_common/647>get_module_config(): Missing component spec: data_link:dlink_tls_rpc:packet_mod{...}: [{server_opts,[{port,9007},{ping_interval,5000}]}]
16:05:02.907<dlink_tls_conn/160>packet_mod = dlink_data_msgpack
16:05:02.938<rvi_common/647>get_module_config(): Missing component spec: da 530C ta_link:dlink_tls_rpc:frag_opts{...}: [{server_opts,[{port,9007},{ping_interval,5000}]}]
16:05:02.940<rvi_common/654>get_module_config(): data_link:dlink_tls_rpc:server_opts -> [{port,9007},{ping_interval,5000}]:
Removing the pass phrase from the client's key results in successful connection.