diff options
author | Darren Tucker <dtucker@zip.com.au> | 2004-11-05 20:26:49 +1100 |
---|---|---|
committer | Darren Tucker <dtucker@zip.com.au> | 2004-11-05 20:26:49 +1100 |
commit | 1dee8683fb86b7840787ea29e40f5c18abca7eac (patch) | |
tree | 9f21f6e72a52b8e8091e85fbd2c22e9f60f725b3 /ssh-agent.c | |
parent | 636ca9024742cde37769f87bf4d19b2405720222 (diff) | |
download | openssh-git-1dee8683fb86b7840787ea29e40f5c18abca7eac.tar.gz |
- djm@cvs.openbsd.org 2004/10/07 10:12:36
[ssh-agent.c]
don't unlink agent socket when bind() fails, spotted by rich AT
rich-paul.net, ok markus@
Diffstat (limited to 'ssh-agent.c')
-rw-r--r-- | ssh-agent.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/ssh-agent.c b/ssh-agent.c index 7bc4c240..fffed134 100644 --- a/ssh-agent.c +++ b/ssh-agent.c @@ -35,7 +35,7 @@ #include "includes.h" #include "openbsd-compat/sys-queue.h" -RCSID("$OpenBSD: ssh-agent.c,v 1.120 2004/08/11 21:43:05 avsm Exp $"); +RCSID("$OpenBSD: ssh-agent.c,v 1.121 2004/10/07 10:12:36 djm Exp $"); #include <openssl/evp.h> #include <openssl/md5.h> @@ -1122,6 +1122,7 @@ main(int ac, char **av) sock = socket(AF_UNIX, SOCK_STREAM, 0); if (sock < 0) { perror("socket"); + *socket_name = '\0'; /* Don't unlink any existing file */ cleanup_exit(1); } memset(&sunaddr, 0, sizeof(sunaddr)); @@ -1130,6 +1131,7 @@ main(int ac, char **av) prev_mask = umask(0177); if (bind(sock, (struct sockaddr *) & sunaddr, sizeof(sunaddr)) < 0) { perror("bind"); + *socket_name = '\0'; /* Don't unlink any existing file */ umask(prev_mask); cleanup_exit(1); } |