Lines 584-595
Link Here
|
584 |
int len; |
584 |
int len; |
585 |
struct sockaddr_un serv_addr; |
585 |
struct sockaddr_un serv_addr; |
586 |
char *p; |
586 |
char *p; |
|
|
587 |
char *tmpdir; |
588 |
|
589 |
/* Get TMPDIR variable. Don't use $TMPDIR if it unset or |
590 |
set to empty string. */ |
591 |
tmpdir = getenv("TMPDIR"); |
592 |
if (tmpdir == NULL) |
593 |
tmpdir = getenv("TMP"); |
594 |
if (tmpdir != NULL && tmpdir[0] == 0) |
595 |
tmpdir = NULL; |
587 |
|
596 |
|
588 |
/* fixme: if there is already a running gpg-agent we should |
597 |
/* fixme: if there is already a running gpg-agent we should |
589 |
share the same directory - and vice versa */ |
598 |
share the same directory - and vice versa */ |
590 |
*socket_name = 0; |
599 |
*socket_name = 0; |
591 |
snprintf (socket_name, DIM(socket_name)-1, |
600 |
snprintf (socket_name, DIM(socket_name)-1, |
592 |
"/tmp/gpg-XXXXXX/S.scdaemon"); |
601 |
"%s/gpg-XXXXXX/S.scdaemon", tmpdir != NULL ? tmpdir : "/tmp"); |
593 |
socket_name[DIM(socket_name)-1] = 0; |
602 |
socket_name[DIM(socket_name)-1] = 0; |
594 |
p = strrchr (socket_name, '/'); |
603 |
p = strrchr (socket_name, '/'); |
595 |
if (!p) |
604 |
if (!p) |