From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Ken Brown Newsgroups: gmane.emacs.bugs Subject: bug#49524: 28.0.50; make-serial-process is not portable Date: Mon, 12 Jul 2021 17:35:40 -0400 Message-ID: <57a32998-24f8-9e2c-adf5-d4971d3087cc@cornell.edu> References: <82e72be1-9907-c08f-0c1d-d625e914a902@cornell.edu> <834kd0byy5.fsf@gnu.org> <8bf20bb2-ca96-3ee5-01e2-ec8b00cc8c91@cornell.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="30555"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 Cc: 49524@debbugs.gnu.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Mon Jul 12 23:36:15 2021 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1m33b5-0007kw-6R for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 12 Jul 2021 23:36:15 +0200 Original-Received: from localhost ([::1]:48582 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m33b3-0002R0-4z for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 12 Jul 2021 17:36:13 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:47492) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m33as-0002Qs-Ff for bug-gnu-emacs@gnu.org; Mon, 12 Jul 2021 17:36:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:55679) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1m33as-0001B9-8I for bug-gnu-emacs@gnu.org; Mon, 12 Jul 2021 17:36:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1m33ar-0002gO-Vb for bug-gnu-emacs@gnu.org; Mon, 12 Jul 2021 17:36:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Ken Brown Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 12 Jul 2021 21:36:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 49524 X-GNU-PR-Package: emacs Original-Received: via spool by 49524-submit@debbugs.gnu.org id=B49524.162612575210297 (code B ref 49524); Mon, 12 Jul 2021 21:36:01 +0000 Original-Received: (at 49524) by debbugs.gnu.org; 12 Jul 2021 21:35:52 +0000 Original-Received: from localhost ([127.0.0.1]:38992 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m33ai-0002g1-HL for submit@debbugs.gnu.org; Mon, 12 Jul 2021 17:35:52 -0400 Original-Received: from mail-bn8nam11on2134.outbound.protection.outlook.com ([40.107.236.134]:63168 helo=NAM11-BN8-obe.outbound.protection.outlook.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1m33ag-0002fn-3K for 49524@debbugs.gnu.org; Mon, 12 Jul 2021 17:35:51 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=A9jiD3pvK6NbfADHDtqm2xkiUrgkyVdbGzbOTpTxYz+ZTUs7j8jowdvOsZhlLLK8dKznZhTtDztg+QtvxEvCtI63xcHQ0m85QyiOmPiJFSvgRBNrw3aLKQsmbqPsFzMT3/SepaiaY1MwZfv1krBDmq2kX7yWcrCq9P07DpV0b2jOFziksWcd049fV7M+ia/I3cl8gcF6FgBxYD2pNFLt5AHFws7yysB2ZB5nuOUwZy96A7ePaHV4mgtJjClSplElHC+mXuOqzwUsfmgQjxzcEftyXCNitx9Qowd7J2tvGnXiw30H+6xV9iH3LAwMcI5Ka7SdX35pWRCGv8nEOK8gmg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yi3amFmk/sDyquNvR18ZGza7MniG+TWevpvnRjEDPuc=; b=QR6AugYIYMANFeTN8vEeFv/zBvqsrG1tSiiQ9c0OEdAjgryu2gLQ2pKB8fG8bixxV4lvOkYC8EyHi0Ptk4kSpDw2ZXh4yzFoBIBqQbEyRlll+aABkeqgGnfUI5JS4ycUkNnZbYdxgbSMkBjtucHjMV+n/Zj07I4lPZtFCLLnU6+25ZM4ddqC8u52F1UF5piVYo9nOm7P9YrMIYmDeX9uCqu9PnuB3dKjA8OsXHxpa/go1NILS31/dSAlo7adoB8UEpP0IubklRc2i2+GbXe+EPcW63nImMqoxbLpCVCCnqeqI7T2FPfxBCphKGt6KnvIt06JhXDU8xcwWe5o15NbFA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cornell.edu; dmarc=pass action=none header.from=cornell.edu; dkim=pass header.d=cornell.edu; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cornell.edu; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=yi3amFmk/sDyquNvR18ZGza7MniG+TWevpvnRjEDPuc=; b=HVzQRscCRkYzFLBiaBk4vL3NutWJ3dBfZcDtdbnrfv3FZovPllTr/TYZ25duun5taSTuVGrjv2qZZetbTKMhI528XTM2/HC1v3VFnGmMpyuyODIM6jFKClYE7qIPF8C3WEHfuqzanvgjFr00vI6UUtaLolWObdewBDJRmqqa+JU= Authentication-Results: debbugs.gnu.org; dkim=none (message not signed) header.d=none;debbugs.gnu.org; dmarc=none action=none header.from=cornell.edu; Original-Received: from BN7PR04MB4388.namprd04.prod.outlook.com (2603:10b6:406:f8::19) by BN6PR04MB0354.namprd04.prod.outlook.com (2603:10b6:404:99::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4308.22; Mon, 12 Jul 2021 21:35:43 +0000 Original-Received: from BN7PR04MB4388.namprd04.prod.outlook.com ([fe80::cda2:359c:cb66:5c42]) by BN7PR04MB4388.namprd04.prod.outlook.com ([fe80::cda2:359c:cb66:5c42%7]) with mapi id 15.20.4308.021; Mon, 12 Jul 2021 21:35:43 +0000 In-Reply-To: <8bf20bb2-ca96-3ee5-01e2-ec8b00cc8c91@cornell.edu> Content-Language: en-US X-ClientProxiedBy: BL0PR0102CA0069.prod.exchangelabs.com (2603:10b6:208:25::46) To BN7PR04MB4388.namprd04.prod.outlook.com (2603:10b6:406:f8::19) X-MS-Exchange-MessageSentRepresentingType: 1 Original-Received: from [IPv6:2603:7081:7e41:6a00:edaf:43a:30cb:1538] (2603:7081:7e41:6a00:edaf:43a:30cb:1538) by BL0PR0102CA0069.prod.exchangelabs.com (2603:10b6:208:25::46) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4308.23 via Frontend Transport; Mon, 12 Jul 2021 21:35:43 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 7f82e646-a509-4cc4-cc23-08d9457d0095 X-MS-TrafficTypeDiagnostic: BN6PR04MB0354: X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:820; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: vmnBIoCldlxHpBMeIenNAehbF+u1SLVVif66nPiOi9JpHlKYIDSEYXYxpqN9IvuKyg+9kq3bQTlmeBOt2v1YqLJFZpsBHTgt3gpTXSmJZd5ifrFwLqLhitOGMeNdzLXLcwUmI3QoLUoPfHbSLr8Rsgss7kBNi0AC9ewU/gnbUEmepE+BMLJuZ3DkVwK9mpgUvr0XsM+Cicam63zvmEYQDISZq4lgMuYvh79jkKkm1wUV6fmiCMc8XOdWhCM6g/ki1YHN5pdKFZjrwT2DAUXKXLoCPWgt5lmvTz1LrIsaEUqCIB1a9KLAyaJvHXZ6oxmhVOVkvdoPJsDnJ6SHi8D/UrGDYw04RbTZiHvcphUj/EQSFQEkYOGhgAL7HF6GmhKHcuHylnpfqjJ1HIjlfw17e/2BD5ImACwVzvlqMghRv7aaSeObKC4isDhHJoRzNkVr2KMqYCFw5WCVtFW3N7/lwSPz43J6zTM9OWp9iTZBG9h/uG0K5qySpKStvt2EUg9HJcH6RhvlhWxKa69DlDs9e0bBbf63R8xwmDn6DIIBq5TweHZOUZrmcv/H4ZFs7YkDWsB7LAI6amGkg3KS5B0YUcru4Gmw0cHsSHt9dDAMP74TIJMT6ttmeZv0f7Pq6lLFrnMIj1RNXsSkmugJPvxO1pwhMj/AbocwGjyUzv17hDiCok3FOD/Gxa2QIt6Hjo6n03oK8TkVSd4Gvbk1s62eI/4cT1/ogFI9+d7QaLFUnM5cfCbYAh3EE9DpGvYED gdIPJAL+OY/GM5L/Nq6Ja5JMnUaZsKDVqTG0bvaF1bqrG4= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN7PR04MB4388.namprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(136003)(396003)(366004)(346002)(376002)(39860400002)(8676002)(786003)(4326008)(8936002)(38100700002)(478600001)(36756003)(6486002)(316002)(6916009)(2616005)(186003)(86362001)(2906002)(5660300002)(66476007)(75432002)(66946007)(31686004)(66556008)(31696002)(966005)(53546011)(83380400001)(43740500002); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: PHpGNLXhec7lZGRfLOE6g20jOyKipvSlvbWP4MdqGsBKwufQ6jK1r5B88ZwvHztX+flNkVzsM7XOERKNH2cWs40U+s66RYYIg0GD/Gh3QAwav8Yrd6HRgUcA2QJDcQkuhDaCzlhbSbgULPDmYKR+FCC0e/cJ111P/xPHtUdZdKho9tYFQq4OVY74CyMqXebyycemASquH00izIJ4l7rWkNQDqfpR9E50TSuTWorZYIlo0cq+hmEfCk7I8ONe6F5nzniizBSAfTBiRGlWH1DmnI6cKCbkLLz/hYDqhSwwlXYKKM4x5Me2q+Z98/1dPgpw8y5W18BohXmVXZzpt6Fu68iTATpNpZOP+uTdqWsSq3gn440uLY81yyhN61UcysKPJdDt/0mbsHUulmXOo5ephgENnTiHweLyMn1DPBdZ2Q+2q+rmSwccTYyPDPMf1VAce0pydspBlcAADn1g0VRy+k4omKFToZ0uFbngmExVdTz1gyqohkwIvsh48i4hixKDzcIr4uNWpESTgykSqnfC0YlS2HNkiBNLhZIpWUgGtr+eMnnqX+RTquXxBsEHuE8igoq3i8LIIvF9VGZ6Um5r2ClUqpsBSvmag3eXcZJjM3nRwvuK/zwYZ5Bc4JzbGqccaz5zeGsnSmnA76GeS2TTdD8RFD0RiOeDZvdCwQuRibQKC/tp5/oIt8jb4kt/LHx8B03JzYHfucWsImcwtiLir9JxvJvljTI9VJ0h3yPxLv+jsM6MZ/fL8QhX6k eF3oKeH4inRFKKPG8jIg0xKKH4AziX2h1d7DlGu7OrkvGXV/rHefljXl1O3ZBWLgo+ythiW790EtNYcLWcN+3Ccnf8PfjiJCKE X-OriginatorOrg: cornell.edu X-MS-Exchange-CrossTenant-Network-Message-Id: 7f82e646-a509-4cc4-cc23-08d9457d0095 X-MS-Exchange-CrossTenant-AuthSource: BN7PR04MB4388.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jul 2021 21:35:43.4300 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 5d7e4366-1b9b-45cf-8e79-b14b27df46e1 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: +4yu5eZ4Xg074kJO0cVOlg2yhuintgUobAgc4srMskO9bMl5ptGzYctAlRL88vgT5+PkEGgI3nfq/xeFP1cvIA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR04MB0354 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:209840 Archived-At: On 7/12/2021 9:27 AM, Ken Brown wrote: > On 7/11/2021 12:24 PM, Eli Zaretskii wrote: >>> From: Ken Brown >>> Date: Sun, 11 Jul 2021 11:24:58 -0400 >>> >>> Fmake_serial_process calls Fserial_process_configure, which calls >>> serial_configure, which calls cfsetspeed with the speed argument equal to the >>> numerical baud rate (e.g., 9600).  But the documentation of cfsetspeed says that >>> the speed argument must be one of the Bnnn constants defined in termios.h (e.g., >>> B9600).  See, for example, >>> >>>     https://man7.org/linux/man-pages/man3/termios.3.html >>> >>> This incorrect call of cfsetspeed happens to succeed on GNU/Linux because >>> glibc's cfsetspeed allows the argument to be the numerical baud rate, which it >>> converts to the appropriate Bnnn constant.  But I don't think emacs should be >>> relying on this undocumented behavior.  In particular, this doesn't work on >>> Cygwin.  And it wouldn't even work on GNU/Linux if emacs used the cfsetspeed >>> replacement defined in sysdep.c instead of glibc's cfsetspeed. >>> >>> I think the way to fix this is to imitate the glibc code that converts the baud >>> rate to a Bnnn constant, but maybe someone has a better idea. >> >> Converting in sysdep.c:serial_configure sounds TRT to me. > > Patch attached. BTW, we've decided to change Cygwin's cfsetspeed to be compatible with glibc's, so the problem fixed by my patch won't exist on Cygwin going forward. And I checked FreeBSD out of curiosity and found that there's no issue there either because of the way they define the Bnnn constants: #define B0 0 #define B50 50 #define B75 75 ... So I should probably remove the reference to non-glibc platforms in my commit message. Ken