From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.4 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED, UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 22579 invoked from network); 28 Apr 2022 14:07:27 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 28 Apr 2022 14:07:27 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20210803; t=1651154847; b=LzGRjq71LpS5ZZjwKvPfibjh3O4YMz7v/0XSJQAoDQPdlcFRIUF8jGUaF2xJGLpe0CwqYB/0k1 UhPra2+vxjmEYmZEu8NoHvilGBOa8gd/TxcEtlFGws77seFYYacKRAhsw9gvuQPrlMaZR091xK cHuz+yfwtCVHE9YMykCfrbmxYqaQAgtJ9C1bJrD+uEztSW+X1EBl2jLSkjTnMW7KWGvln74JVE EhPdcVOy2PHNP4eQdG9XoBkx0ExceBCcQ138v9P2upflTsm8rrMTM1nOOnHi/sjXEvlfQK69BH ic8EBu+AGGb4IF2xg55AnFk/6EZkn2l1fh3NmASNMBbFrg==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mail-oa1-f42.google.com) smtp.remote-ip=209.85.160.42; dkim=pass header.d=gmail.com header.s=20210112 header.a=rsa-sha256; dmarc=pass header.from=gmail.com; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20210803; t=1651154847; bh=MCwhS4B44NzWSyY8L9SgnPUyfOezZHuxPsegEQiAT20=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:In-Reply-To:Content-Type:MIME-Version:References:Message-ID: Subject:To:From:Date:DKIM-Signature:DKIM-Signature; b=BZ/yiyMadgsiGYvtDgRLZNw1eVeddJ8EyhTa4ZkpkFrj8mdkqSjTvVxOhwIeVcu5Z408qXpris K6Tote18HhIL3jwiUUOA45fRpScm/PayoaTou3ZCI/yhO3Q2fh91oZ2v6LjSlp93pFI+iDLKjI GvgkMDL++o2IoctQnXR8UpGZY6ozvh5R/XUxN5yyU3AOyAq9arn+AgmROyICJ+QruH74JrZ6Id 3WzLuQx3jl0kjhvPWnunlxWw6Y38izwWpjCHQn0aYstjZk9X76sj0f+37xPpsG/mY9zz7A/xcd ifVf58mbjHzn1L0vJFGpg5EQyxVVKyCKyuZsxw8gBLkM8g==; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org; s=rsa-20210803; h=List-Archive:List-Owner:List-Post:List-Unsubscribe: List-Subscribe:List-Help:List-Id:Sender:In-Reply-To:Content-Type:MIME-Version :References:Message-ID:Subject:To:From:Date:Reply-To:Cc: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID; bh=TSmGxPp/abfq+WYZ9FjQFq7CVnU+OMzD21x50zEOFxw=; b=i8emfbz1tRxN/zYAJkuNA7AFi+ dnNSbfwvFO82LUd0BXmFtCJjQxztkAlXTVVFSVlkThpc+uWcY+iKWIhnsBiNwuG2sofEENjRBj5/S uLWS577sHFm8GRZrtEuOFZZ/NRVqsfeO2mree0+dCgh4JSpJ9keiMO9P3/GVov0YgdsWIgQOCiVM1 bGpbZBqPfPrnPrSlCZhod+rzhda+B/mRXtuP3+9SP1WJJHLlHAGkHtAjQvDICIYEi03D/1Kbw1rt+ DF/KpQ1p0NxHgvQ6aTNxUFejPvg14vWC+d8XGawjljaTbwpV+HgP/EpWJ+x1Ch8VdxI9v1tKwLQlH 5XsITppA==; Received: from authenticated user by zero.zsh.org with local id 1nk4nm-000ECT-NI; Thu, 28 Apr 2022 14:07:26 +0000 Authentication-Results: zsh.org; iprev=pass (mail-oa1-f42.google.com) smtp.remote-ip=209.85.160.42; dkim=pass header.d=gmail.com header.s=20210112 header.a=rsa-sha256; dmarc=pass header.from=gmail.com; arc=none Received: from mail-oa1-f42.google.com ([209.85.160.42]:45193) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1nk4nY-000DsS-PU; Thu, 28 Apr 2022 14:07:13 +0000 Received: by mail-oa1-f42.google.com with SMTP id 586e51a60fabf-e93bbb54f9so5225033fac.12 for ; Thu, 28 Apr 2022 07:07:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=date:from:to:subject:message-id:mail-followup-to:references :mime-version:content-disposition:in-reply-to; bh=TSmGxPp/abfq+WYZ9FjQFq7CVnU+OMzD21x50zEOFxw=; b=crLosExjMjsWg7z75+br2Tw0D2CWWnmE9Dn5teuqjTGlblnm8Y8Medgk9EQ50e3NaM e41XedJQrIN3SCSi4LAKHb816B8WeasetUttssL7leZ1LBXExjVIsfJlozqKhVhLYqUN NpXwqylVg5FZP2PvlBYTEuZbxW6T1Z5xqtwpHxAXdjMMxVspnYuCLAwwB0GtqCy8oFJL XhFhhbu0XQYfMGdxLDrnPFRaQqP0XFrEhx2zZ0NXV/x6h8wwOlyPCaa5Erk+/1qFaPyX GA20kA3bcv+kQAFkmajmId0J16yDYkCWr19M6GIlwv17ZKS+/nFCw7dv3HchZ2pvOFHx 7rnA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:from:to:subject:message-id:mail-followup-to :references:mime-version:content-disposition:in-reply-to; bh=TSmGxPp/abfq+WYZ9FjQFq7CVnU+OMzD21x50zEOFxw=; b=lC0WbpnF+lry/yoZYa9SfLRLW/HDf2XLTtfR8Y7uIiqVLEGyUT/SjLZOgvbXopwZa8 x3Jl5ckol3b/iwFAtedvHbcvU/2nO68g3iFtZOPA1uenqexwk5A9w22xBuALdUHSpAyR MOrwybm+/+tabs3joamkcxJgNIsja6Ib1m9i+lvNDwx19E+xW4WrT89T8AVmlQpWgP1E luGS1veL73EitpwArgASJQe7W9kaVA0TSDOB6KuxrDhvVonnRhCIaiZW4j2kw80vqQPr xU1iEnyd7xpv7T5PgMiqzFLJNPIykWNsDLXnz+Cc/aElZlVxDA6AmFuONENZlGUtYmNu oblQ== X-Gm-Message-State: AOAM533+GqQfDv6M3wfP7LqWj6CAHGRyNPnZtLKXaBtn1JylzOl2BeDx Zu1Ig/fB6xnlXK1Af41NMCnd5sQkPEw= X-Google-Smtp-Source: ABdhPJy0oFcpsq8fJF+YwnU4h1E6nmyeOCoBfJXVXqBzx9arwteRSjPGAJClSWHmLAkW7j9YRfB0+w== X-Received: by 2002:a05:6871:824:b0:e9:1a6c:1e76 with SMTP id q36-20020a056871082400b000e91a6c1e76mr10934169oap.98.1651154830682; Thu, 28 Apr 2022 07:07:10 -0700 (PDT) Received: from CptOrmolo.darkstar (cpe-76-184-110-212.tx.res.rr.com. [76.184.110.212]) by smtp.gmail.com with ESMTPSA id bo8-20020a056808228800b003259ef57ba8sm32605oib.57.2022.04.28.07.07.10 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 28 Apr 2022 07:07:10 -0700 (PDT) Date: Thu, 28 Apr 2022 09:07:07 -0500 From: Matthew Martin To: zsh-workers@zsh.org Subject: Re: ERRNO is unset until set Message-ID: Mail-Followup-To: zsh-workers@zsh.org References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Seq: 50130 Archived-At: X-Loop: zsh-workers@zsh.org Errors-To: zsh-workers-owner@zsh.org Precedence: list Precedence: bulk Sender: zsh-workers-request@zsh.org X-no-archive: yes List-Id: List-Help: List-Subscribe: List-Unsubscribe: List-Post: List-Owner: List-Archive: On Thu, Apr 28, 2022 at 08:18:58AM -0500, Jim wrote: > Hi, > > Man page zshmodules(5.8) seems to be missing status information in module > zsh/system for builtins sysopen and sysseek. All the other builtins have > some > kind of statement for return status. I believe status 0 is success and 1 > would > be an error of some kind for both. Don't know if there are other error > numbers > or if the parameter ERRNO is used. While looking at copying the text under syswrite for sysopen and sysseek, I ran a short test for ERRNO. > zmodload zsh/system; syswrite -o 3 test; print $? $ERRNO 2 As Mikael pointed out on IRC, setting ERRNO once is sufficient for ERRNO to reflect errno. The patch below lets ERRNO reflect errno without setting ERRNO first. diff --git a/Src/params.c b/Src/params.c index 27ea82298..c144c25c3 100644 --- a/Src/params.c +++ b/Src/params.c @@ -297,7 +297,7 @@ static initparam special_params[] ={ #define NULL_GSU BR((GsuScalar)(void *)NULL) #define IPDEF1(A,B,C) {{NULL,A,PM_INTEGER|PM_SPECIAL|C},BR(NULL),GSU(B),10,0,NULL,NULL,NULL,0} IPDEF1("#", pound_gsu, PM_READONLY_SPECIAL), -IPDEF1("ERRNO", errno_gsu, PM_UNSET), +IPDEF1("ERRNO", errno_gsu, 0), IPDEF1("GID", gid_gsu, PM_DONTIMPORT | PM_RESTRICTED), IPDEF1("EGID", egid_gsu, PM_DONTIMPORT | PM_RESTRICTED), IPDEF1("HISTSIZE", histsize_gsu, PM_RESTRICTED),