From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by lists.proxmox.com (Postfix) with ESMTPS id 1EC0693F75 for ; Mon, 9 Jan 2023 14:58:45 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 066C32E633 for ; Mon, 9 Jan 2023 14:58:45 +0100 (CET) Received: from proxmox-new.maurer-it.com (proxmox-new.maurer-it.com [94.136.29.106]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by firstgate.proxmox.com (Proxmox) with ESMTPS for ; Mon, 9 Jan 2023 14:58:44 +0100 (CET) Received: from proxmox-new.maurer-it.com (localhost.localdomain [127.0.0.1]) by proxmox-new.maurer-it.com (Proxmox) with ESMTP id 3AEE2450F1 for ; Mon, 9 Jan 2023 14:58:44 +0100 (CET) Message-ID: <9983e23c-97cf-eaec-9c23-42bb1eda1f8d@proxmox.com> Date: Mon, 9 Jan 2023 14:58:42 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.6.0 Content-Language: en-US To: Wolfgang Bumiller Cc: pbs-devel@lists.proxmox.com References: <20230103142308.656240-1-l.wagner@proxmox.com> <20230103142308.656240-8-l.wagner@proxmox.com> <20230104134045.claxj34i3efc465u@casey.proxmox.com> From: Lukas Wagner In-Reply-To: <20230104134045.claxj34i3efc465u@casey.proxmox.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-SPAM-LEVEL: Spam detection results: 0 AWL 0.169 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment NICE_REPLY_A -0.001 Looks like a legit reply (A) SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: Re: [pbs-devel] [PATCH proxmox-backup 07/17] api-types: add config options for LDAP user sync X-BeenThere: pbs-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox Backup Server development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 09 Jan 2023 13:58:45 -0000 On 1/4/23 14:40, Wolfgang Bumiller wrote: >> +#[derive(Serialize, Deserialize, Updater, Default, Debug)] >> +#[serde(rename_all = "kebab-case")] >> +/// Default options for LDAP synchronization runs >> +pub struct SyncDefaultsOptions { >> + /// How to handle vanished properties/users >> + pub remove_vanished: Option, > > ^ Should be possible to actually use `RemoveVanished` as a type here? > (and replace `schema: REMOVE_..` with `type: RemoveVanished,` in the > `#[api]` block. > remove-vanished is actually an array: `remove-vanished=acl;entries;properties` Not sure if I'm missing something, but I think your approach would not for for something like this? The whole sync-defaults-options configuration key is a bit weird to handle due to these nested property-string, for example: sync-defaults-options enable_new=true remove-vanished=acl;entries Took me a while to get these to parse/validate correctly :) >> +const USER_CLASSES_TEXT: &str = "Comma-separated list of allowed objectClass values for user synchronization. \ >> +For instance, if ``user-classes`` is set to ``person,user``, then user synchronization will consider all LDAP entities >> +where ``objectClass: person`` `or` ``objectClass: user``."; > > ^ seems to need reformatting (100 char limit) > Thanks, I probably rely a bit too much on rustfmt - which of course does not touch multi-line strings. -- - Lukas