From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.5 required=5.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI autolearn=ham autolearn_force=no version=3.4.4 Received: from minnie.tuhs.org (minnie.tuhs.org [50.116.15.146]) by inbox.vuxu.org (Postfix) with ESMTP id 36D1D22D10 for ; Mon, 24 Jun 2024 16:33:57 +0200 (CEST) Received: from minnie.tuhs.org (localhost [IPv6:::1]) by minnie.tuhs.org (Postfix) with ESMTP id AB1CE431D1; Tue, 25 Jun 2024 00:33:53 +1000 (AEST) Received: from mail-pg1-x533.google.com (mail-pg1-x533.google.com [IPv6:2607:f8b0:4864:20::533]) by minnie.tuhs.org (Postfix) with ESMTPS id DDC13431CF for ; Tue, 25 Jun 2024 00:33:47 +1000 (AEST) Received: by mail-pg1-x533.google.com with SMTP id 41be03b00d2f7-70346ae2c43so3470537a12.1 for ; Mon, 24 Jun 2024 07:33:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1719239627; x=1719844427; darn=tuhs.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=NSfu0aPH13MRVVIOqmtjvsuGmnktLZ1Th78+Hoov5mc=; b=gJsepbhJLxhsc7MUoGb6Y4/ZtHDP6YkRTzONA55SYtIG39JLG647Ee2rMKhO5UFR5w fJnne5yeEK09w87S+aKCZEQ5E4N1Ii11cEG5bvTN83/XwI9mmsVVQKnNzRXdzLLGbrA6 aCCshaKoi+8RQjSE0ljcpiBFSkqtKKVBy7/ieIiAM1QxyqjYz4WWlPE3yAUhLnT6E2xD tspFUZRCAJaEan+CTDD1cdi15MDseylBXh/jZAIO9+2vam7pBdL1JpaWXHoBpo+azzJj bnereIOARQQLCBX8fZuEmZEniLaHwMvDQUIn5lyLFP0ULR5zkoOh0ph+fMb5mn/yrzU8 W4Kw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1719239627; x=1719844427; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=NSfu0aPH13MRVVIOqmtjvsuGmnktLZ1Th78+Hoov5mc=; b=FEUq1Ra7s6pmw/7SgK0vNkRmvazP2RBSIjoREOAP4LpjSfNa3av2271BAhBQk30swx LLVryex6ku6pYnjr4yo9Ftrp/79xxZUHsGXilxwmOdarmLkUrGbSNovmyk3yrXG/dlvh TLq1lpp0utgL6alOw2bpctAlv+64pEJWrlN88WzoLcP7oxFuNkkb3/7OCcvi9Gs0K9cv VnXfsuff40u+acRFVMUsFtvz8ITNgAlGc/YxqsmKhfRie7OX0IcgA48Dp3ii0Z4VU2I+ OtXBOiLKGtyGJfO2yUxx2+nqHzCo8QUm3D1ABIXdInfCykJVN98Gz+fYB9mv0nLN6/ll cWTg== X-Forwarded-Encrypted: i=1; AJvYcCW76FJFDNgidPIhGYxonccLSMcmHkvcJAetG8ILIjixBJ6topzAL1sG0tUxAK/ZZKlOLxsglt2zO48SU+5X X-Gm-Message-State: AOJu0YwaLhzihYSXNawyusNu92JG5Ii64US6yyd6Hj/uxST/lMZb3EwG wCVd6s+i0IGSJp3By/MckGwL0KloP9S8iJs1OF84wp78lh2quR4UwV8JOk6VM4+R1LNJDAPF/YM hVzEy+Z9Pxp8feloJh2t0bVclRMhz/g== X-Google-Smtp-Source: AGHT+IFJSs+/bWPSGyUbH1WVtbHfmaTPZPnmk7ZO6aQKkE8GEHp/S7Jb69k5JBbqNfiJKk8YKRSwfsglj3rTrucxe2k= X-Received: by 2002:a17:90a:a002:b0:2c8:8e09:eecf with SMTP id 98e67ed59e1d1-2c88e0a031amr2475836a91.10.1719239626986; Mon, 24 Jun 2024 07:33:46 -0700 (PDT) MIME-Version: 1.0 References: <87jzikt900.fsf@gmail.com> <877cej5gsp.fsf@gmail.com> <87le2xvo4y.fsf@gmail.com> <76644602-7257-4050-b625-050966280e1c@case.edu> <1d0f3aa8-af0c-1ee2-7625-7dc1a825c457@makerlisp.com> <6e98901c-16cd-9a46-105e-8e694353c666@riddermarkfarm.ca> <20240624140337.GB280025@mit.edu> In-Reply-To: <20240624140337.GB280025@mit.edu> From: Dan Cross Date: Mon, 24 Jun 2024 10:33:08 -0400 Message-ID: To: "Theodore Ts'o" Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Message-ID-Hash: 66PSREZV75VWY4W4C5Z4UWZRSOEMYI45 X-Message-ID-Hash: 66PSREZV75VWY4W4C5Z4UWZRSOEMYI45 X-MailFrom: crossd@gmail.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: Stuff Received , tuhs@tuhs.org X-Mailman-Version: 3.3.6b1 Precedence: list Subject: [TUHS] Re: Building programs (Re: Version 256 of systemd boasts '42% less Unix philosophy' The Register List-Id: The Unix Heritage Society mailing list Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: On Mon, Jun 24, 2024 at 10:12=E2=80=AFAM Theodore Ts'o wrot= e: > On Sun, Jun 23, 2024 at 04:15:40PM -0400, Stuff Received wrote: > > My opinion is that the authors simply did not have access to other > > systems or were not interested. Sometimes, one finds a disclaimer to > > that effect. I understand that but I am irked when they claim POSIX > > compliance. > > I get irked because Posix compliance applies to OS's (a specific > binary release of the kernel plus userspace runtime environment), and > not to applications. > > Also, compliance implies that it has passed a specific test process, > after paying $$$$ to a Posix Test Compliance Lab, and said compliance > certificate gets revoked the moment you fix a security bug, until you > go and you pay additional $$$ to the Posix compliance lab. Basically, > it's racket that generally only companies who need to sell into the US > or European government market were willing to play. (e.g., at one > point there were Red Hat and SuSE distributions which were POSIX > certified, but Fedora or Debian never were.) > > A project or vendor could claim that there product was a "strictly > conforming POSIX application[1], but that's hard to actually prove > (which is why there is no compliance testing for it), since not only > do you have to limit yourself to only those interface guaranted to be > present by POSIX, but you must also not depend on any behavior which > specified to be "implementation defined" (and very often many > traditional Unix behaviors are technically "implementation defined", > so that VMS and Windows could claim to be be "POSIX compliant > implementation".) So a strictly POSIX conforming application was > likely only relevant for very simple "toy" applications that didn't > need to do anything fancy, like say, networking. Also, what is "POSIX" changes over time: new things are added, and occasionally something is removed. Indeed, a new version was just released a couple of weeks ago. So what does it mean to say that some OS conforms to POSIX? Which version? For some very old systems, particularly those that are no longer being substantially updated but that may have conformed to an older version of the standard, they may have credibly claimed "POSIX compliant" at some point in the past, but time has left them behind. It is unreasonable to constrain program authors to ancient versions of standards just because some tiny fraction of people want to use an old system. Consider 4.3BSD, for example: it shipped with a compiler that predated the ANSI C standard, and doesn't understand the ANSI-style function declaration syntax. Should one restrict oneself to the traditional C dialect forever? If so, one loses out on the substantial benefits of stronger type checking. Or consider better string handling functions that came later (`snprintf` is an obvious example, but I would argue `strlcpy` and `strlcat` as well). Should we restrict ourselves to laborious and error-prone shenanigans with `strlen` and `strcpy` just to keep code running on a Sun4c machine under SunOS 4? I really don't think so. - Dan C. > (Berkeley sockets couldn't be required because AT&T Streams. Oh, > joy.) > > [1] https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap02.h= tml#tag_02_02_01 > > Can you tell I'm a bit jaded and cynical about the whole Posix > compliance/conformance thing? :-) > > Cheers, > > - Ted