Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: Zsh 5.0.8 crash



On Jun 27,  1:23pm, German M. Bravo wrote:
} 
} Any idea what this can be?

It probably has something to do with this:

#4  0x00000000004bbfec in zerr (fmt=0x4d0037 "failed to create named pipe: %s, %e") at utils.c:175

The jail is presumably preventing creation of the temporary file for the
named pipe, which is causing the mktemp() library function to return NULL,
which namedpipe() is not prepared to handle.

FreeBSD documents a whole lot of cases where mktemp() can fail which are
not so documented on e.g. Linux.

In any case, the module is not going to work properly in the jail even
with the patch below.  You're going to need to reconfigure the jail to
allow file creation in /tmp (or possibly just change $TMPPREFIX in the
zsh environment).

diff --git a/Src/exec.c b/Src/exec.c
index 50a11eb..39d1326 100644
--- a/Src/exec.c
+++ b/Src/exec.c
@@ -4277,6 +4277,10 @@ namedpipe(void)
 {
     char *tnam = gettempname(NULL, 1);
 
+    if (!tnam) {
+	zerr("failed to create named pipe: %e", errno);
+	return NULL;
+    }
 # ifdef HAVE_MKFIFO
     if (mkfifo(tnam, 0600) < 0){
 # else



Messages sorted by: Reverse Date, Date, Thread, Author