return result;
}
+static void cleanup() {
+ free(tinc_conf);
+ free(hosts_dir);
+ free_names();
+}
int main(int argc, char *argv[]) {
program_name = argv[0];
make_names(false);
xasprintf(&tinc_conf, "%s" SLASH "tinc.conf", confbase);
xasprintf(&hosts_dir, "%s" SLASH "hosts", confbase);
+ atexit(cleanup);
if(show_version) {
version();
#endif
- srand(time(NULL));
+ gettimeofday(&now, NULL);
+ srand(now.tv_sec + now.tv_usec);
crypto_init();
if(optind >= argc) {