bug-ncurses
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Bug(let) in tack-1.06


From: Schmitz, Joachim
Subject: RE: Bug(let) in tack-1.06
Date: Thu, 24 Feb 2011 14:39:42 +0000

And another bug in tack-0.6: ‘tack –V’ reports it to be version 1.05

Fixed in tack-1.07 though

 

From: Schmitz, Joachim
Sent: Thursday, February 24, 2011 3:14 PM
To: 'address@hidden'
Subject: RE: Bug(let) in tack-1.06

 

Hi again

 

Just found tack-1.07 on ftp://invisible-island.net/ncurses/, this is not available on http://ftp.gnu.org/pub/gnu/ncurses/

 

It has the same issues as described earlier though.

 

Bye, Jojo

 

From: Schmitz, Joachim
Sent: Thursday, February 24, 2011 2:33 PM
To: 'address@hidden'
Subject: Bug(let) in tack-1.06

 

Hi there

 

In tack-1.06/output.c I encountered a warning reg. a pointless comparison of an unsigned value vs. EOF, and found that this is due to the fact that chat is unsigned on my platform (as on many others too). Here’s the patch I came up with:

 

--- ./output.c.orig     2007-04-29 18:18:46.000000000 -0500

+++ ./output.c  2011-02-23 13:00:12.000000000 -0600

@@ -718,8 +718,8 @@

int

wait_here(void)

{

-       char ch, cc[64];

-       char message[16];

+       signed char ch;

+       char cc[64], message[16];

        int i, j;

 

        for (i = 0; i < (int) sizeof(cc); i++) {

 

 

Maybe int whould have been a better choice, not sure.

 

Furtermore tack.h #include’s <curses.h>, on my system this is in /usr/local/bin/ncurses/curses.h (and is version 5.7). ‘configure’ detects this properly, but apparently forgets to add “-I/usr/local/include/ncurses” to CFLAGS (or some such) in Makefile. Not sure how to properly fix that, I just called

make CFLAGS=“-I/usr/local/include/ncurses”

 

For config.guess and config.sub (in both, ncurses-5.7 and tack-1.06) there are newer version that do detect my platform (nse-tandem-nsk) properly, so you may want to upgrade to the latest.

 

For ncurses-5.7 I needed this patch (as on this platform the superuser is not UID 0, but 65535):

diff -u ./ncurses/tinfo/access.c.orig ./ncurses/tinfo/access.c

--- ./ncurses/tinfo/access.c.orig       2007-11-17 18:57:53.000000000 -0600

+++ ./ncurses/tinfo/access.c    2011-02-22 10:43:19.000000000 -0600

@@ -171,6 +171,10 @@

        || getgid() != getegid())

        return FALSE;

#endif

+#ifdef __TANDEM

+    return getuid() != 65535 && geteuid() != 65535;    /* ...finally, disallow

root */

+#else

     return getuid() != 0 && geteuid() != 0;    /* ...finally, disallow root */

+#endif

}

#endif

 

Bye,

Joachim Schmitz


reply via email to

[Prev in Thread] Current Thread [Next in Thread]