bugThe GNU Hurd - Bugs: bug #48464, term in IUCLC aka ILCASE mode does...


bug #48464: term in IUCLC aka ILCASE mode does not treat backslash as escape

Submitted by:  Kalle Olavi Niemitalo <kon>
Submitted on:  Mon 11 Jul 2016 11:37:52 AM UTC  
Category:  Hurd Servers Severity:  3 - Normal
Priority:  5 - Normal Item Group:  Hardware Support
Status:  None Privacy:  Public
Assigned to:  None Originator Name: 
Open/Closed:  Open Reproducibility:  Every Time
Size (loc):  None Planned Release:  None
Effort:  0.00
Wiki-like text discussion box: 

Add a New Comment (Rich Markup)

You are not logged in

Please log in, so followups can be emailed to you.


Mon 11 Jul 2016 11:42:34 PM UTC, comment #1: 

OpenBSD implements IUCLC:

It also has a backslash-escape mechanism: its TS_BKSL is similar to the Hurd's LAST_SLASH.  However, that code is only active if the ICANON and XCASE local modes and the IUCLC input mode are all set.  It also makes some other substitutions, for the sake of terminals that do not support e.g. pipe characters.  It does not seem to echo the backslash that causes the TS_BKSL flag to be set.

<termios.h> on GNU/Hurd does not define XCASE.

Kalle Olavi Niemitalo <kon>
Mon 11 Jul 2016 11:37:52 AM UTC, original submission:  

If the IUCLC (also known as ILCASE) input mode is enabled and an upper-case letter comes from the terminal, then the term translator replaces it with the lower-case equivalent.  I believe this is intended to let the user type lower-case characters even on terminals that support only upper case.

The term translator also supports the LAST_SLASH flag to temporarily suspend this translation.  It however never sets that flag.  A comment in term/term.h says LAST_SLASH means the last input character was a backslash.  In term/munge.c (input_character), the part that checks the LAST_SLASH seems to assume that the backslash was also stored to the rawq, and erases it from there.  I don't know whether the backslash was also supposed to be echoed back to the terminal.

The symbol IUCLC was removed in Open Group Base Specifications Issue 6.  NetBSD and Linux do not implement it.  The GNU C Library manual does not document it.  Upper-case-only terminals are not common nowadays.  I suggest removing this feature from the Hurd.

Kalle Olavi Niemitalo <kon>


(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:

No files currently attached


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -email is unavailable- added by kon (Submitted the item)

    Do you think this task is very important?
    If so, you can add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.




    No changes have been made to this item

    Back to the top

    Powered by Savane 3.6