diff --git a/ssh-agent.c b/ssh-agent.c index 2c0e286..28bf6ac 100644 --- a/ssh-agent.c +++ b/ssh-agent.c @@ -1173,7 +1173,10 @@ main(int ac, char **av) if (agentsocket == NULL) { /* Create private directory for agent socket */ - strlcpy(socket_dir, "/tmp/ssh-XXXXXXXXXX", sizeof socket_dir); + char *tmpdir = getenv("TMPDIR"); + if (!tmpdir) + tmpdir = "/tmp"; + snprintf(socket_dir, sizeof socket_dir, "%s/ssh-XXXXXXXXXX", tmpdir); if (mkdtemp(socket_dir) == NULL) { perror("mkdtemp: private socket dir"); exit(1);