Call for review: SSH IUTF8 terminal mode

Simon Tatham <anakin@pobox.com> Wed, 22 June 2016 08:42 UTC

Return-Path: <bounces-ietf-ssh-owner-secsh-tyoxbijeg7-archive=lists.ietf.org@NetBSD.org>
X-Original-To: ietfarch-secsh-tyoxbijeg7-archive@ietfa.amsl.com
Delivered-To: ietfarch-secsh-tyoxbijeg7-archive@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0091F12B00B for <ietfarch-secsh-tyoxbijeg7-archive@ietfa.amsl.com>; Wed, 22 Jun 2016 01:42:39 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.626
X-Spam-Level:
X-Spam-Status: No, score=-5.626 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-1.426, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6ydfxCzTXvAH for <ietfarch-secsh-tyoxbijeg7-archive@ietfa.amsl.com>; Wed, 22 Jun 2016 01:42:36 -0700 (PDT)
Received: from mail.netbsd.org (mail.NetBSD.org [IPv6:2001:470:a085:999::25]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D49E412B054 for <secsh-tyoxbijeg7-archive@lists.ietf.org>; Wed, 22 Jun 2016 01:42:36 -0700 (PDT)
Received: by mail.netbsd.org (Postfix, from userid 605) id 0E75385EC1; Wed, 22 Jun 2016 08:42:36 +0000 (UTC)
Delivered-To: ietf-ssh@netbsd.org
Received: from localhost (localhost [127.0.0.1]) by mail.netbsd.org (Postfix) with ESMTP id 1278885E86 for <ietf-ssh@netbsd.org>; Wed, 22 Jun 2016 08:42:34 +0000 (UTC)
X-Virus-Scanned: amavisd-new at netbsd.org
Received: from mail.netbsd.org ([127.0.0.1]) by localhost (mail.netbsd.org [127.0.0.1]) (amavisd-new, port 10025) with ESMTP id BcX7lsz59tvu for <ietf-ssh@netbsd.org>; Wed, 22 Jun 2016 08:42:33 +0000 (UTC)
Received: from atreus.tartarus.org (atreus.tartarus.org [80.252.125.10]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.netbsd.org (Postfix) with ESMTPS id 64E7584D04 for <ietf-ssh@netbsd.org>; Wed, 22 Jun 2016 08:42:33 +0000 (UTC)
Received: from simon by atreus.tartarus.org with local (Exim 4.69) (envelope-from <simon@atreus.tartarus.org>) id 1bFdjz-0006AI-7D for ietf-ssh@netbsd.org; Wed, 22 Jun 2016 09:42:31 +0100
Content-Type: text/plain; charset="UTF-8"
From: Simon Tatham <anakin@pobox.com>
To: ietf-ssh <ietf-ssh@netbsd.org>
Subject: Call for review: SSH IUTF8 terminal mode
Date: Wed, 22 Jun 2016 09:42:31 +0100
Message-Id: <1466583822-sup-1463@atreus.tartarus.org>
User-Agent: Sup/git
Content-Transfer-Encoding: 8bit
MIME-Version: 1.0
Sender: ietf-ssh-owner@NetBSD.org
List-Id: ietf-ssh.NetBSD.org
Precedence: list

I'm trying to get an RFC published that standardises the use of code 42
for the IUTF8 terminal mode bit.

This has been suggested on this list more than once: in the mailing list
archives at

  ftp://ftp.ietf.org/ietf-mail-archive/secsh/

I can find discussion started by Colin Watson on 2005-12-31, and by
David Madore on 2013-03-29. Both suggestions allocated the same number
(42) for the flag.

Moreover, Fedora's package of OpenSSH already seems to be running with a
downstream patch implementing IUTF8 under that number. For example, I
just found

  https://dl.fedoraproject.org/pub/fedora/linux/updates/23/SRPMS/o/openssh-7.2p2-3.fc23.src.rpm

which contains a patch file openssh-7.1p1-iutf8.patch implementing it. I
also know tha MouSSH has a development branch containing the same
feature.

So I'd like to bless that existing consensus and practice by turning
this Internet-Draft into an RFC:

  https://datatracker.ietf.org/doc/draft-sgtatham-secsh-iutf8

and am calling for reviews. If anyone has any review comments or
(hopefully not) objections, please send them along!

Cheers,
Simon

-- 
for k in [pow(x,37,0x1a1298d262b49c895d47f) for x in [0x50deb914257022de7fff,
0x213558f2215127d5a2d1, 0x90c99e86d08b91218630, 0x109f3d0cfbf640c0beee7,
0xc83e01379a5fbec5fdd1, 0x19d3d70a8d567e388600e, 0x534e2f6e8a4a33155123]]:
 print "".join([chr(32+3*((k>>x)&1))for x in range(79)]) # <anakin@pobox.com>