diff lib-src/gnuslib.c @ 259:11cf20601dec r20-5b28

Import from CVS: tag r20-5b28
author cvs
date Mon, 13 Aug 2007 10:23:02 +0200
parents e45d5e7c476e
children 972bbb6d6ca2
line wrap: on
line diff
--- a/lib-src/gnuslib.c	Mon Aug 13 10:22:10 2007 +0200
+++ b/lib-src/gnuslib.c	Mon Aug 13 10:23:02 2007 +0200
@@ -72,6 +72,8 @@
 
 #include <arpa/inet.h>
 
+char *tmpdir = NULL;
+
 char *progname = NULL;
 
 int make_connection(hostarg, portarg, s)
@@ -134,7 +136,7 @@
   key_t key;			/* message key */
   char buf[GSERV_BUFSZ+1];		/* buffer for filename */
 
-  sprintf(buf,"/tmp/gsrv%d",(int)geteuid());
+  sprintf(buf,"%s/gsrv%d",tmpdir,(int)geteuid());
   creat(buf,0600);
   if ((key = ftok(buf,1)) == -1) {
     perror(progname);
@@ -263,9 +265,9 @@
   
   server.sun_family = AF_UNIX;
 #ifdef HIDE_UNIX_SOCKET
-  sprintf(server.sun_path,"/tmp/gsrvdir%d/gsrv",(int)geteuid());
+  sprintf(server.sun_path,"%s/gsrvdir%d/gsrv",tmpdir,(int)geteuid());
 #else  /* HIDE_UNIX_SOCKET */
-  sprintf(server.sun_path,"/tmp/gsrv%d",(int)geteuid());
+  sprintf(server.sun_path,"%s/gsrv%d",tmpdir,(int)geteuid());
 #endif /* HIDE_UNIX_SOCKET */
   if (connect(s,(struct sockaddr *)&server,strlen(server.sun_path)+2) < 0) {
     perror(progname);