GNUNET_free_non_null (url);
if (NULL != tmp_cfgfile)
- remove (tmp_cfgfile);
-
+ {
+ if (0 != remove (tmp_cfgfile))
+ GNUNET_log_strerror_file (GNUNET_ERROR_TYPE_WARNING, "remove", tmp_cfgfile);
+ GNUNET_free (tmp_cfgfile);
+ tmp_cfgfile = NULL;
+ }
if (NULL != proxy_proc)
- GNUNET_OS_process_kill (proxy_proc, 9);
+ {
+ (void) GNUNET_OS_process_kill (proxy_proc, SIGKILL);
+ GNUNET_assert (GNUNET_OK == GNUNET_OS_process_wait (proxy_proc));
+ GNUNET_OS_process_destroy (proxy_proc);
+ proxy_proc = NULL;
+ }
url = NULL;
}
if (GNUNET_SYSERR == GNUNET_OS_check_helper_binary ("gnunet-gns-proxy"))
{
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Proxy binary not in PATH... skipping!\n");
+ fprintf (stderr, "Proxy binary not in PATH... skipping!\n");
+ return 0;
+ }
+
+ if (GNUNET_YES != GNUNET_OS_check_helper_binary ("gnunet-helper-dns"))
+ {
+ fprintf (stderr, "DNS helper binary has wrong permissions... skipping!\n");
return 0;
}