openbsd-ports/plan9/wily/patches/patch-libmsg_connect_c
2003-05-24 19:13:08 +00:00

34 lines
872 B
Plaintext

$OpenBSD: patch-libmsg_connect_c,v 1.1 2003/05/24 19:13:08 pvalchev Exp $
--- libmsg/connect.c.orig Sun Apr 12 13:37:42 1998
+++ libmsg/connect.c Sat May 24 13:12:29 2003
@@ -109,11 +109,13 @@ client_connect(void)
/* bind it to a unix-domain at a temporary address */
addr.sun_family = AF_UNIX;
- tmpnam(addr.sun_path);
+ sprintf(addr.sun_path, "%s/xx.XXXXXXXX", P_tmpdir);
+ close(mkstemp(addr.sun_path));
path = strdup(addr.sun_path);
len = strlen(addr.sun_path);
if (bind(s, (struct sockaddr *) &addr, sizeof addr) < 0){
+ unlink(path);
perror("bind");
return -1;
}
@@ -122,10 +124,14 @@ client_connect(void)
fd = wilyfifotalk(); /* fifo to wily */
if(fd<0)
+ {
+ unlink(path);
return -1;
+ }
nwritten = write(fd, addr.sun_path, len);
close(fd);
if(nwritten !=len){
+ unlink(path);
perror("write to wily");
return -1;
}