From debbugs-submit-bounces@debbugs.gnu.org Thu Nov 11 14:16:42 2021 Received: (at submit) by debbugs.gnu.org; 11 Nov 2021 19:16:42 +0000 Received: from localhost ([127.0.0.1]:42294 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mlFYt-0000Xp-Ej for submit@debbugs.gnu.org; Thu, 11 Nov 2021 14:16:42 -0500 Received: from lists.gnu.org ([209.51.188.17]:42890) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mlFYo-0000UR-UX for submit@debbugs.gnu.org; Thu, 11 Nov 2021 14:16:38 -0500 Received: from eggs.gnu.org ([209.51.188.92]:43650) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mlFYo-0001kt-Q0 for bug-gnu-emacs@gnu.org; Thu, 11 Nov 2021 14:16:34 -0500 Received: from [2607:f8b0:4864:20::32e] (port=37797 helo=mail-ot1-x32e.google.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mlFYm-0005YI-VC for bug-gnu-emacs@gnu.org; Thu, 11 Nov 2021 14:16:34 -0500 Received: by mail-ot1-x32e.google.com with SMTP id h19-20020a9d3e53000000b0056547b797b2so9492660otg.4 for ; Thu, 11 Nov 2021 11:16:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:from:date:message-id:subject:to; bh=culkZp2sI39RBX0DmjEswQ2bDKPM8CIA32FzvyHeh5M=; b=Z2I8cdP4ipPSD/5tNlaIKpXb4xMSS+N2PMi9+ChJu4dJ/Xx9WOYB7V0y99GwCecAE/ Bs8ShfTkgejvlrAfeXkZ4zG5TuIPxvA3ngCIJeYyX9gfjG/gpm3eVt+qiBQBOeNwRswx d1vBne9QrOzXral5e4vY14Bi8+tlgkE437oX5oHnoRj5jqQoZl0ubrW5u/t3Jqi+lBvG xkrjgOSkb8rTkndeLszbe6rx/biF50no1CMFOEAdBvtCOvE6CaVBkuMxMgae/60EPZWv QFyb+kJVoonU3h31hq/YYfxdq+IZjnWYf684zxacWBmh6qu2b+/s073ceOLDPE3WGvxq RFIQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=culkZp2sI39RBX0DmjEswQ2bDKPM8CIA32FzvyHeh5M=; b=QHJw3Bp4a4kHOReAAryNYsEB4Uw0isdwWgwfd4TDmh1Hx29aKGFOTS1SgyNsDhFquq IIvQE6IGV9wej5BeDoSLXV9lyYfFllSXdGkbzbhjpusg34PsngoaUld+iaKyQjhs/r8n tdvizl+r4r5Xw0ECOqyySwqXMsEzZWMnNe8fYat14wL7wI6UZepQFZgTeVxVlijBWqXw k9il7XAgG3VAkc+Y5xql7Mb4jWZY41P8SmpQdbV8LEDT3tMEhxeqqV8KxwJtitMSeWeG R469Bx2ocgk60LlxGdqSdXWJRm3RYwoXEzX+tv+lq5N/sDI+xOi2ZM4Rc4WVAygidcIW KP2g== X-Gm-Message-State: AOAM531Pc71mUPUZIm9VkqbxwmbC6BWTMIaPTOq6WPdgkXldb9EXD/ot /3Q+bLeQlIzDzpKFsDw0yz1YUIzy9FRHaYGBUaFQNMgd8i8= X-Google-Smtp-Source: ABdhPJxmOkV2E/sSOOBbnLJiUJLqtO7y7La6DNCdrXNtC4L6qa1aUwG2kDhV5dDoCyypJ/BAhs4kajnTyRSLn5kiUBY= X-Received: by 2002:a05:6830:442a:: with SMTP id q42mr1611103otv.385.1636658190247; Thu, 11 Nov 2021 11:16:30 -0800 (PST) MIME-Version: 1.0 From: Ioannis Kappas Date: Thu, 11 Nov 2021 19:16:19 +0000 Message-ID: Subject: 28.0.60; Issue writing files over WebDAV on MS-Windows To: bug-gnu-emacs@gnu.org Content-Type: text/plain; charset="UTF-8" X-Host-Lookup-Failed: Reverse DNS lookup failed for 2607:f8b0:4864:20::32e (failed) Received-SPF: pass client-ip=2607:f8b0:4864:20::32e; envelope-from=ioannis.kappas@gmail.com; helo=mail-ot1-x32e.google.com X-Spam_score_int: -12 X-Spam_score: -1.3 X-Spam_bar: - X-Spam_report: (-1.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, PDS_HP_HELO_NORDNS=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.0 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Hi, There appears to be an issue with Emacs on MS-Windows that prevents writing to files over WebDAV with the following error message: Getting ACLs: Input/output error, ////...// To reproduce 1. C-x f to a UNC path or mapped drive pointing to a WebDAV server. 2. Insert some text and C-x s to save the file. 3. The above error message appears, the buffer is still marked as modified and any other attempt to save the file fails with the same error. Analysis to follow. In GNU Emacs 28.0.60 (build 2, x86_64-w64-mingw32) of 2021-11-11 Repository revision: 6dae01ad6da1bcbced062c0d46a6759c7a0570e4 Repository branch: emacs-28 Windowing system distributor 'Microsoft Corp.', version 10 From debbugs-submit-bounces@debbugs.gnu.org Thu Nov 11 14:22:34 2021 Received: (at 51773) by debbugs.gnu.org; 11 Nov 2021 19:22:34 +0000 Received: from localhost ([127.0.0.1]:42307 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mlFec-0001Sd-GB for submit@debbugs.gnu.org; Thu, 11 Nov 2021 14:22:34 -0500 Received: from mail-ot1-f43.google.com ([209.85.210.43]:36588) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mlFea-0001SR-VY for 51773@debbugs.gnu.org; Thu, 11 Nov 2021 14:22:33 -0500 Received: by mail-ot1-f43.google.com with SMTP id w6-20020a9d77c6000000b0055e804fa524so10380246otl.3 for <51773@debbugs.gnu.org>; Thu, 11 Nov 2021 11:22:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:from:date:message-id:subject:to; bh=Y1rDcnHDgxQnFe4u6DbHaSlGEH00P8eWamq0LxWmqTk=; b=gaXg/3uuIrOK65SiHQ/QfUwLAVOV26B6i2bFF6ycxUsxnFxplTuuvudTeTleB5St/k nKj+9HUCb+Mc7Qtv4O/7Oi8sdSxi5x6CTKPtFKDwIiQhrv2rSPUd4W/emPt1GZThz7vu K1ZZ0ExD6RlSeV+0WjZgFaq5C8sw0ZjQ8qcHtSklxNWwjPUytGx76CbyaR7vKRLILUlb rcfjOXUmTKQ9lyO6w9/vOoLl58vkwK3ruh7GK6REcW3MIDdoQBNeoM1Yg3bg+ucExLN6 IDDmNv1+Ay41OmV/aRymTTHJ+xGDOG+5Lnjy/t7ZsTOU+TU+p17VDXqaTiAp1fAVQDQP gEcw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=Y1rDcnHDgxQnFe4u6DbHaSlGEH00P8eWamq0LxWmqTk=; b=36l28dMtMxRiDZ4+YNVKP3HAcn6zTFRhrJonx20oL9HOArVIADxdGOP9nPe9y+ztVP +TV9pWKHKXRh2cOc6x/EXFS5IbT0xer8UfE5vPtROdjsvzFKpcivY7SQlGfOxgUA+ERP C0Ohy1s1hnXYnr85WcZAsWPPbmIMlY18EnuuJdK0mcdaTaoxoTL9aCqnfrTBqcztsGsD z2pf9v5b21zUmkWV3pCp16W/esVjDNs1uY2+KaZtnHOgEsl13lNXU/UBqDH1M0jsPP/x +Le+38eeuSvne5VrGkqBlv65pP3513Er6CUGeB7Sov1/fTDujbxfqzynAmk36G8AUYPt PuMg== X-Gm-Message-State: AOAM531ZUSK09pc06cP+uMYHATa0XbGX/+P8TgseAo0cu+wCpA8BI1Q4 M5vUeKS20id4CSR1eQLIcp/hBzAE+xTJmadUkU60h80E9vE= X-Google-Smtp-Source: ABdhPJwOIH3OgKOVUYKHpVP0Mm4SJMtevsI4EHGxaBp4RcnNmAsmCQYtu+5qZYGW0Ga8xCTVlDBX3Cvx14LAHrBsy8Y= X-Received: by 2002:a05:6830:442a:: with SMTP id q42mr1639402otv.385.1636658547253; Thu, 11 Nov 2021 11:22:27 -0800 (PST) MIME-Version: 1.0 From: Ioannis Kappas Date: Thu, 11 Nov 2021 19:22:16 +0000 Message-ID: Subject: 28.0.60; Issue writing files over WebDAV on MS-Windows To: 51773@debbugs.gnu.org Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 51773 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) The issue is caused by the ERROR_INVALID_FUNCTION error returned by w32.c:get_security_info()'s GetSecurityInfo win32 fn when it is called on a WebDAV file. The caller w32.c:acl_get_file() doesn't know how to handle the error and returns it as is, causing the write to fail and the error message to be displayed. Looking at the caller, it does have a clause to return ENOSUP for WebDAV files: else if (err == ERROR_NOT_SUPPORTED /* ERROR_ACCESS_DENIED is what we get for a volume mounted by WebDAV, which evidently doesn't support ACLs. */ || err == ERROR_ACCESS_DENIED) errno = ENOTSUP; Thus a solution, which I have tested it to work, is to add the ERROR_INVALID_FUNCTION to the predicate diff --git a/src/w32.c b/src/w32.c index 9fe698d28d..0e066b12e7 100644 --- a/src/w32.c +++ b/src/w32.c @@ -6614,10 +6614,11 @@ acl_get_file (const char *fname, acl_type_t type) || err == ERROR_INVALID_NAME) errno = ENOENT; else if (err == ERROR_NOT_SUPPORTED - /* ERROR_ACCESS_DENIED is what we get for a volume - mounted by WebDAV, which evidently doesn't - support ACLs. */ - || err == ERROR_ACCESS_DENIED) + /* ERROR_ACCESS_DENIED or ERROR_INVALID_FUNCTION is + what we get for a volume mounted by WebDAV, + which evidently doesn't support ACLs. */ + || err == ERROR_ACCESS_DENIED + || err == ERROR_INVALID_FUNCTION) errno = ENOTSUP; else errno = EIO; Please let me know if you require more info. Thanks From debbugs-submit-bounces@debbugs.gnu.org Thu Nov 11 14:43:39 2021 Received: (at 51773-done) by debbugs.gnu.org; 11 Nov 2021 19:43:39 +0000 Received: from localhost ([127.0.0.1]:42363 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mlFz0-00022a-TP for submit@debbugs.gnu.org; Thu, 11 Nov 2021 14:43:39 -0500 Received: from eggs.gnu.org ([209.51.188.92]:48230) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mlFyz-00022O-P4 for 51773-done@debbugs.gnu.org; Thu, 11 Nov 2021 14:43:38 -0500 Received: from [2001:470:142:3::e] (port=41488 helo=fencepost.gnu.org) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mlFyu-0000gb-H6; Thu, 11 Nov 2021 14:43:32 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=gIAFOR/aueEbwhVw//wn9/Cg8VANQJ6IXZoC3rP8zoA=; b=pJjHrgqPqyhR F/bZ2T05a4+edyt/ttH1klBP3QTWDVa6xYSMa4fCPWz4i+NEnODcXx51kIDYMX8LrDFcdiVKkOd/2 uPKpC7A6bWI+up4LLm9EJ4m096c4wRwRvlgzxiQ/ZDHVzT3ZfI37hXSsQjjl/HXhHG254OkzWK/bK V1rBWXZFUySaJ8gqNd7pyiRa3gzfpo1ZgcK95iYLmwa7MvUfBEMy0t9s10afD70J8Ae3+HWWxQ5Fd CBcoXGovMnE7dRjToXBJ3VzcNklIlj6/kEajOoU3eGmC6wTcZjn6Q8ijfOney1pwDfALsZJGjVAR1 MALqID6Z74NmllersI96ug==; Received: from [87.69.77.57] (port=3471 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mlFyu-0005px-4z; Thu, 11 Nov 2021 14:43:32 -0500 Date: Thu, 11 Nov 2021 21:43:26 +0200 Message-Id: <83pmr6zdep.fsf@gnu.org> From: Eli Zaretskii To: Ioannis Kappas In-Reply-To: (message from Ioannis Kappas on Thu, 11 Nov 2021 19:22:16 +0000) Subject: Re: bug#51773: 28.0.60; Issue writing files over WebDAV on MS-Windows References: X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 51773-done Cc: 51773-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Ioannis Kappas > Date: Thu, 11 Nov 2021 19:22:16 +0000 > > Thus a solution, which I have tested it to work, is to add the > ERROR_INVALID_FUNCTION to the predicate > > diff --git a/src/w32.c b/src/w32.c > index 9fe698d28d..0e066b12e7 100644 > --- a/src/w32.c > +++ b/src/w32.c > @@ -6614,10 +6614,11 @@ acl_get_file (const char *fname, acl_type_t type) > || err == ERROR_INVALID_NAME) > errno = ENOENT; > else if (err == ERROR_NOT_SUPPORTED > - /* ERROR_ACCESS_DENIED is what we get for a volume > - mounted by WebDAV, which evidently doesn't > - support ACLs. */ > - || err == ERROR_ACCESS_DENIED) > + /* ERROR_ACCESS_DENIED or ERROR_INVALID_FUNCTION is > + what we get for a volume mounted by WebDAV, > + which evidently doesn't support ACLs. */ > + || err == ERROR_ACCESS_DENIED > + || err == ERROR_INVALID_FUNCTION) > errno = ENOTSUP; > else > errno = EIO; > > Please let me know if you require more info. Thanks, installed on the emacs-28 branch (there was one more place which needed the same fix, a few lines above the one you fixed). From unknown Mon Jun 16 23:48:25 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Fri, 10 Dec 2021 12:24:12 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator