Return-Path: Delivered-To: apmail-apr-dev-archive@apr.apache.org Received: (qmail 21851 invoked by uid 500); 21 Aug 2002 20:10:36 -0000 Mailing-List: contact dev-help@apr.apache.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Delivered-To: mailing list dev@apr.apache.org Received: (qmail 21839 invoked from network); 21 Aug 2002 20:10:35 -0000 X-Authentication-Warning: cancer.clove.org: jerenk set sender to jerenkrantz@apache.org using -f Date: Wed, 21 Aug 2002 13:10:40 -0700 From: Justin Erenkrantz To: dev@apr.apache.org Subject: Portable file permissions Message-ID: <20020821201040.GW14713@apache.org> Mail-Followup-To: Justin Erenkrantz , dev@apr.apache.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4i X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N Over on dev@svn, I've brought up the desire to have Subversion be able to handle permissions on a file that are in the repository. I want to set a property on a file that indicates I want it to be user-readable and user-writable but nothing else (i.e. 600 octet permission). The key here would be no matter what platform your client is on, the 'right' thing would happen when you check-out the file. So, we come here now as we need to add missing pieces to APR. The key problem here is that APR has no *portable* permissions structure. apr_file_perms_set() is a no-op on Win32 and Branko says it will always be a no-op because the API is wrong. So, given a desire to have a mapping that works for the Unix-style u-g-o (for true Unix ACLs are uncommon), what type of API or permissions structure could we come up with that works with Win32? Since I have no knowledge of what the Win32 ACLs can and cannot do, I'm at a loss. (If you ask me, the current APR API is just fine!) Someone pointed out looking at Samba, but I'm fairly certain that isn't relevant since it uses configurable mappings set by the admin. All we want is a unified API that can do "essentially" the right thing for both permission models. -- justin