freebsd-ports/lang/tcl82/files/patch-tclUnixPipe.c
Dirk Meyer 3b37e7ae6b Tcl will get hostname using uname(3). It seems FreeBSD's uname(3)
returns only 31 letters by /usr/include/sys/utsname.h.

 Problem was that configure detects uname(3) and uses uname(3) in
 the hostname-function, while gethostname gives more (=longer)
 information.

 keep uname around, as it is be used in TclpSetVariables.

 took maintainership 8.2

 apply a fix for unsafe tempfile handling from 8.3

PR:		18896
Submitted by:	yoshint@flab.fujitsu.co.jp
2001-11-14 08:44:08 +00:00

13 lines
434 B
C

--- tclUnixPipe.c.orig Tue Nov 30 09:43:03 1999
+++ tclUnixPipe.c Wed Nov 14 09:09:20 2001
@@ -185,8 +185,8 @@
char fileName[L_tmpnam];
int fd;
- tmpnam(fileName); /* INTL: Native. */
- fd = open(fileName, O_RDWR|O_CREAT|O_TRUNC, 0666); /* INTL: Native. */
+ strlcpy(fileName, "/var/tmp/tcltmp.XXXXXX", L_tmpnam);
+ fd = mkstemp(fileName); /* INTL: Native. */
if (fd == -1) {
return NULL;
}