freebsd-ports/lang/tcl83/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

15 lines
506 B
C

--- tclUnixPipe.c.orig Wed Apr 4 00:54:39 2001
+++ tclUnixPipe.c Thu May 10 22:00:30 2001
@@ -195,10 +195,8 @@
* We should also check against making more then TMP_MAX of these.
*/
- if (tmpnam(fileName) == NULL) { /* INTL: Native. */
- return NULL;
- }
- fd = open(fileName, O_RDWR|O_CREAT|O_EXCL, 0666); /* INTL: Native. */
+ strlcpy(fileName, "/var/tmp/tcltmp.XXXXXX", L_tmpnam);
+ fd = mkstemp(fileName); /* INTL: Native. */
if (fd == -1) {
return NULL;
}