[Python-bugs-list] [ python-Bugs-431191 ] termios, Python 2.1 and 1.5.2, AIX, SCO

noreply@sourceforge.net noreply@sourceforge.net
Tue, 03 Jul 2001 23:17:30 -0700


Bugs item #431191, was opened at 2001-06-07 11:59
You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=431191&group_id=5470

Category: Build
Group: None
>Status: Closed
>Resolution: Fixed
Priority: 5
Submitted By: Mike Kent (mikent)
Assigned to: Nobody/Anonymous (nobody)
Summary: termios, Python 2.1 and 1.5.2, AIX, SCO

Initial Comment:
Getting the 'termios' module to compile or work on
various platforms is like trying to pass a bowling
ball.

We need to input no-echoing passwords, therefore the
need for termios.

Building Python 2.1 on aix-4.3-2.1, with termios turned
on in Modules/Setup, results in undefined symbol errors
for 'VDISCARD' and 'VWERASE'.

Building Python 1.5.2 on the same platform, with
termios turned on, works fine, and gives us non-echoing
passwords via getpass.

Building Python 1.5.2 on SCO Open Server 5, with
termios turned on, yields echoing passwords.  Hmm. 
Upon further investingation (browsing the getpass.py
source code), we found that the configure script
believes this platform to be sco_sv3, and that the
necessary file Lib/plat_sco_sv3/TERMIOS.py was
missing.  Running the 'regen' script in that directory
created TERMIOS.py, which allowed a build of python
with termios turned on.  However, when testing getpass,
it would now generate a termios.error exception.  From
investigating this (debugging termios.c), we determined
that a call to tcsetattr was returning an error code
and setting errno to 22 (Invalid argument).

We gave up at that point.

Wasn't one of the selling points of Python the ability
to write code that would run on multiple platforms?

----------------------------------------------------------------------

>Comment By: Fred L. Drake, Jr. (fdrake)
Date: 2001-07-03 23:17

Message:
Logged In: YES 
user_id=3066

The problem of VDISCARD and VWERASE causing compilation
problems is fixed in the CVS repository; the fix is included
in the upcoming 2.1.1 bugfix release.

While Python *allows* writing portable code, it does not
mask most differences in the underlying systems, especially
in areas (like terminal control) where the specifics vary is
tedious ways.  Specific suggestions would be appreciated,
but we don't have access to most of the platforms Python
runs on.

Closing the bug report as all issues that can be handled in
the currently maintained and developed versions have been
dealt with.

----------------------------------------------------------------------

You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=431191&group_id=5470