vine_session_set_registered_cb(session, __registered_cb, NULL);
PRINT_IF_ERROR(vine_session_register(session, service, NULL), "vine_session_register");
+ vine_service_destroy(service);
}
static void __server_opened_cb(vine_dp_h dp, vine_error_e result, void *user_data)
PRINT_IF_ERROR(ret, "vine_service_foreach_attribute");
printf("\n");
fflush(stdout);
+
+ free(service_type);
+ free(service_name);
}
static void __discovered_cb(vine_session_h session, vine_service_h service,
if (vine_security_create(&s) != VINE_ERROR_NONE)
return NULL;
- if (vine_security_set_type(s, (vine_security_type_e)type) != VINE_ERROR_NONE)
+ if (vine_security_set_type(s, (vine_security_type_e)type) != VINE_ERROR_NONE) {
+ vine_security_destroy(s);
return NULL;
+ }
if (type >= VINE_SECURITY_TYPE_TLS) {
vine_security_set_ca_path(s, ROOT_CA_PATH);
vine_dp_set_terminated_cb(g_server_dp, __terminated_cb, NULL);
vine_dp_set_address_family(g_server_dp, (vine_address_family_e)addr_family);
vine_dp_set_port(g_server_dp, port);
- vine_dp_set_security(g_server_dp, __create_security_handle(security_type, true));
+ vine_security_h security = __create_security_handle(security_type, true);
+ vine_dp_set_security(g_server_dp, security);
+ vine_security_destroy(security);
PRINT_RESULT(vine_dp_open(g_server_dp, __opened_cb, NULL), "vine_dp_open");
}
vine_dp_set_remote_ip(g_client_dp,
addr_type ? VINE_ADDRESS_FAMILY_IPV6 : VINE_ADDRESS_FAMILY_IPV4, ip);
PRINT_RESULT(vine_dp_set_port(g_client_dp, port), "vine_dp_set_port");
- vine_dp_set_security(g_client_dp, __create_security_handle(security_type, false));
+ vine_security_h security = __create_security_handle(security_type, true);
+ vine_dp_set_security(g_client_dp, security);
+ vine_security_destroy(security);
PRINT_RESULT(vine_dp_open(g_client_dp, __opened_cb, NULL), "vine_dp_open");
}