bug-hurd
[Top][All Lists]
Advanced

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

set_state error code [address@hidden: tc[gs]etattr and PPC]


From: Marcus Brinkmann
Subject: set_state error code [address@hidden: tc[gs]etattr and PPC]
Date: Sun, 10 Feb 2002 19:40:42 +0100
User-agent: Mutt/1.3.27i

Hi,

does this affect us, in particular with my changes to set_state?  I am not
even sure which tcsetattr implementation in glibc we use (the bsd one?).

Thanks,
Marcus

----- Forwarded message from Thorsten Kukuk <kukuk@suse.de> -----

Envelope-to: marcus@localhost
Delivery-date: Sun, 10 Feb 2002 19:14:32 +0100
Mailing-List: contact libc-alpha-help@sources.redhat.com; run by ezmlm
List-Unsubscribe: 
<mailto:libc-alpha-unsubscribe-marcus.brinkmann=ruhr-uni-bochum.de@sources.redhat.com>
List-Subscribe: <mailto:libc-alpha-subscribe@sources.redhat.com>
List-Archive: <http://sources.redhat.com/ml/libc-alpha/>
List-Post: <mailto:libc-alpha@sources.redhat.com>
List-Help: <mailto:libc-alpha-help@sources.redhat.com>, 
<http://sources.redhat.com/ml/#faqs>
From: Thorsten Kukuk <kukuk@suse.de>
To: libc-alpha@sources.redhat.com
Subject: tc[gs]etattr and PPC
Organization: SuSE GmbH, Nuernberg, Germany
X-Spam-Status: No, hits=0.0 required=5.0 tests= version=2.01
X-UIDL: !p%#!a-i!!\-f"!"ad!!


Hi,

I got a bug report about glibc/struct termios on PPC.

Since the struct termios is different between glibc and kernel, we
copy the structre. On PPC, we call tc[gs]ettattr for this. But
this functions do some extra checks and return with an error, if
the kernel does not accept CSIZE, PARENB and CREAD.

Some programs like xterm makes TCSETS-ioctls (and don't call 
tcsetattr), but we call tcsetattr which fails and return a wrong
error code to the caller.

POSIX says:

    The tcsetattr() function shall return successfully if it was able to
    perform any of the requested actions, even if some of the requested
    actions could not be performed.

so the wrapper in the current implementation is not correct.

How can we fix this? One suggestion is to add an internal flag so
that our tcsetattr does not perform the check, the other is to
remove or fix the wrapper.

  Thorsten

-- 
Thorsten Kukuk       http://www.suse.de/~kukuk/        kukuk@suse.de
SuSE Linux AG        Deutschherrenstr. 15-19       D-90429 Nuernberg
--------------------------------------------------------------------    
Key fingerprint = A368 676B 5E1B 3E46 CFCE  2D97 F8FD 4E23 56C6 FB4B


----- End forwarded message -----

-- 
`Rhubarb is no Egyptian god.' Debian http://www.debian.org brinkmd@debian.org
Marcus Brinkmann              GNU    http://www.gnu.org    marcus@gnu.org
Marcus.Brinkmann@ruhr-uni-bochum.de
http://www.marcus-brinkmann.de



reply via email to

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