From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pg1-x533.google.com (mail-pg1-x533.google.com [IPv6:2607:f8b0:4864:20::533]) by sourceware.org (Postfix) with ESMTPS id A9AD53856948 for ; Tue, 30 May 2023 11:25:50 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org A9AD53856948 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-pg1-x533.google.com with SMTP id 41be03b00d2f7-52cbd7d0c37so2699888a12.3 for ; Tue, 30 May 2023 04:25:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1685445950; x=1688037950; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=xdZPyB2zgqzu06EZxwcruc+XsqXmTG0IoH7Yb2I/RCI=; b=GmNCE2kqvTp1bBDaUBrVdnf3R3nirysBjDB00SifBUZ1cuJ0SmW4z7vzq0O24KY5zw Y5jhOsPrS9GyeaspGF/SRs7fGtQZIbf4I8Ax/zE+bKW5YYLEYf8wfdx3dPRIegx2U9zZ lXN0aFaBU1KTiyYffZ39o7mvP65SgD2z2WGaZ8mqQi/F2U0qOlVwKiVnb4HpcEaM35js +KOq4bvzpX115BSwstdgLwz/a63O1jObOSvnRvkCvOd1Zl5nXsPBURVwfKPSZHGmtgkO QKevmYgrO9LhMSbgAmkXf3SKqpuHv41Xsq/nif2cERKVGDOrQPy+zEYnk26OrDL6vY30 2uHA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685445950; x=1688037950; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=xdZPyB2zgqzu06EZxwcruc+XsqXmTG0IoH7Yb2I/RCI=; b=U3GvmhWeXi03FbQg/zd11K+TwqQgs/M2oD8dQ/BbC7vQpDPAzGShRE9r3DCihifKyJ JqRfuMa9FnCKBeqepbmune182+rRxllNDKLp7ZZ6qvUoHEO+x4bNDFUV75Dw4sgLprdu o9ECRO5f3gMgp3JvPVGegbcdBXSUAWkHUuj2WmXcOHTVbZpjalkJINe+H+dmKWRHmDmQ aymG4+ZHoJKczzYmji3aURhwUhIxj60EngA80iu6qdo3z2HaxZASMO2lHijgTY3qaQkL fktqfhRE2MJIEHwMrKc7LdREKnafjLX1ouRaS/Y0K0yv2cRWnHhN1R5t7rp7rvAWe5FG Fbpg== X-Gm-Message-State: AC+VfDw5C8Mu8ZGId5Ao7+5SzSI6oNPYnZN+84Fp+qviXW1aWpGLVJC7 zSVX6na2noU/TBtEteWzKBh7U5BpA8KVoYr4HnebS/B/+mE= X-Google-Smtp-Source: ACHHUZ5aE/Z1tj5fuZ6NNI6oOyZb77Xb0QtLfUeSlSQl8zCtgIPY9d1WaJ8d5FZWkoK+HnAkMuzsg1Pll5/50chi2w8= X-Received: by 2002:a17:902:e84f:b0:1b0:43c2:b9f5 with SMTP id t15-20020a170902e84f00b001b043c2b9f5mr2362144plg.42.1685445949700; Tue, 30 May 2023 04:25:49 -0700 (PDT) MIME-Version: 1.0 From: Philippe Cerfon Date: Tue, 30 May 2023 13:25:38 +0200 Message-ID: Subject: PATCH: export XATTR_{NAME,SIZE,LIST}_MAX To: newlib@sourceware.org Content-Type: multipart/mixed; boundary="0000000000001f179605fce77771" X-Spam-Status: No, score=-7.0 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: --0000000000001f179605fce77771 Content-Type: text/plain; charset="UTF-8" Hey there. Linux exports XATTR_{NAME,SIZE,LIST}_MAX in it's linux/limits.h and e.g. the CPython interpreter uses them for it's XATTRs functions. I made a corresponding PR at CPython https://github.com/python/cpython/pull/105075 to get the code built for Cygwin, but right now this would fail due to the missing XATTR_*_MAX symbols. The attached patch below would add them to cygwin/limits.h. But beware, I'm absolutely no Windows/Cygwin expert ^^ - so whether the values I've chosen are actually correct, is more guesswork rather than definite knowledge. As written in the commit message, I think: - XATTR_NAME_MAX corresponds to MAX_EA_NAME_LEN and - XATTR_SIZE_MAX to MAX_EA_VALUE_LEN though I have no idea, whether these are just lower boundaries used by Cygwin, while e.g. Windows itself might set longer names or value lenghts, and thus - when Cygwin would try to read such - it might get into troubles (or rather e.g. CPython, as it's buffers wouldn't suffice to read the EA respectively XATTR. Neither to i have an idea about XATTR_LIST_MAX. I'm not even 100% sure what it means (I guess the max number of XATTRs per file). Not to speak about whether there's such maximum for Windows EAs, And again - as above - what would happen if Windows itself would set more than that limit and within Cygwin one would try to read/list all. Thanks, Philippe --0000000000001f179605fce77771 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-export-XATTR_-NAME-SIZE-LIST-_MAX.patch" Content-Disposition: attachment; filename="0001-export-XATTR_-NAME-SIZE-LIST-_MAX.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lia6z3b40 RnJvbSA4MjRiY2RmMDUzYmZiODY1NzBjN2VkZGEzYzAxODYyNmRjODU3YThiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQaGlsaXBwZSBDZXJmb24gPHBoaWxjZXJmQGdtYWlsLmNvbT4K RGF0ZTogVHVlLCAzMCBNYXkgMjAyMyAxMzoxNjoxOCArMDIwMApTdWJqZWN0OiBbUEFUQ0hdIGV4 cG9ydCBYQVRUUl97TkFNRSxTSVpFLExJU1R9X01BWAoKVGhlc2UgYXJlIHVzZWQgZm9yIGV4YW1w bGUgYnkgQ1B5dGhvbi4gWEFUVFJfTkFNRV9NQVggc2hvdWxkIGNvcnJlc3BvbmQgdG8KTUFYX0VB X05BTUVfTEVOIGFuZCBYQVRUUl9TSVpFX01BWCB0byBNQVhfRUFfVkFMVUVfTEVOLgoKSXQncyB1 bmNsZWFyIHdoZXRoZXIgV2luZG93cyBpbXBvc2VzIGEgbWF4aW11bSBudW1iZXIgb2YgRUEncyBw ZXIgZmlsZSBhbmQgd2hpY2gKdmFsdWUgc2hvdWxkIGJlIHVzZWQgZm9yIFhBVFRSX0xJU1RfTUFY LCBzbyBmb3Igbm93IExpbnV4JyB2YWx1ZS4KClNpZ25lZC1vZmYtYnk6IFBoaWxpcHBlIENlcmZv biA8cGhpbGNlcmZAZ21haWwuY29tPgotLS0KIHdpbnN1cC9jeWd3aW4vaW5jbHVkZS9jeWd3aW4v bGltaXRzLmggfCA3ICsrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKykKCmRp ZmYgLS1naXQgYS93aW5zdXAvY3lnd2luL2luY2x1ZGUvY3lnd2luL2xpbWl0cy5oIGIvd2luc3Vw L2N5Z3dpbi9pbmNsdWRlL2N5Z3dpbi9saW1pdHMuaAppbmRleCBhZWZjN2M3YmQuLjkzOWFiNGYz OCAxMDA2NDQKLS0tIGEvd2luc3VwL2N5Z3dpbi9pbmNsdWRlL2N5Z3dpbi9saW1pdHMuaAorKysg Yi93aW5zdXAvY3lnd2luL2luY2x1ZGUvY3lnd2luL2xpbWl0cy5oCkBAIC01Niw0ICs1NiwxMSBA QCBkZXRhaWxzLiAqLwogI2RlZmluZSBfX1BBVEhfTUFYIDQwOTYKICNkZWZpbmUgX19QSVBFX0JV RiA0MDk2CiAKKy8qIEtlZXAgaW4gc3luYyB3aXRoIE1BWF9FQV9OQU1FX0xFTiByZXNwZWN0aXZl bHkgTUFYX0VBX1ZBTFVFX0xFTiBpbgorICogd2luc3VwL2N5Z3dpbi9udGVhLmNjIGJ1dCBkb24g bm90IHVzZSB2YWx1ZXMgdGhhdCBleGNlZWQgdGhlaXIgTGludXgKKyAqIGNvdW50ZXJwYXJ0cyBh cyBkZWZpbmVkIGluIGxpbnV4L2xpbWl0cy5oLiAqLworI2RlZmluZSBYQVRUUl9OQU1FX01BWCAy NTUKKyNkZWZpbmUgWEFUVFJfU0laRV9NQVggNjU1MzYKKyNkZWZpbmUgWEFUVFJfTElTVF9NQVgg NjU1MzYKKwogI2VuZGlmIC8qIF9DWUdXSU5fTElNSVRTX0hfXyAqLwotLSAKMi40MC4xCgo= --0000000000001f179605fce77771--