diff -urp driftnet-0.1.6.old/driftnet.c driftnet-0.1.6/driftnet.c
--- driftnet-0.1.6.old/driftnet.c 2002-07-09 20:26:41.000000000 +0100
+++ driftnet-0.1.6/driftnet.c 2005-12-13 16:52:04.000000000 +0000
@@ -11,6 +11,8 @@ static const char rcsid[] = "$Id: driftn
#undef NDEBUG
+#include <glib.h>
+
#include <assert.h>
#include <dirent.h>
#include <errno.h>
@@ -585,10 +587,15 @@ int main(int argc, char *argv[]) {
} else {
/* need to make a temporary directory. */
for (;;) {
- tmpdir = strdup(tmpnam(NULL));
- if (mkdir(tmpdir, 0700) == 0)
- break;
- free(tmpdir);
+ const char *tmp;
+ char *template;
+
+ tmp = g_get_tmp_dir();
+ template = g_build_filename(tmp, "drifnet-XXXXXX", NULL);
+ tmpdir = mkdtemp (template);
+ g_free (template);
+ if (tmpdir)
+ break;
}
}