<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
John,<br>
<br>
The upgrade script doesn't know much about comments, except that
they are the block of lines immediately before a setting in
preferences.php (and zendto.conf, with a different syntax).<br>
It certainly can't actually parse them to see what you may have
commented out.<br>
<br>
The upgrade script also has no prior knowledge of what settings
should be there, and what shouldn't. There is no "list of all the
possible settings". It learns all that for itself, by reading your
old preferences.php and the newly supplied one.<br>
<br>
What's happening is that you are commenting out the only definition
of 'authLDAPStartTLS', for example, so it thinks this is a new
setting that has just appeared in the very latest preferences.php
(and it wasn't set in your previous one), so it adds it as a new
setting.<br>
<br>
But the 1 and only setting for (for example) 'authLDAPStartTLS'
won't have any effect unless you also have set<br>
<tt> 'authenticator' => 'LDAP',</tt><br>
so I don't quite see what you achieve by commenting them out. It
will only use the authenticator settings for your chosen
authenticator. All the others will simply have no effect.<br>
<br>
Sorry about the 'authLDAP' naming clash between the LDAP and AD
authenticators, that's for historic reasons from when I first forked
the project from udel's "Dropbox" a long time ago in a galaxy far
away. And yes, they sadly called it Dropbox, nothing to do with the
"other" Dropbox. So I can't change that now.<br>
The difference is that all the AD settings end with a number (1,2,3)
whereas the LDAP settings don't.<br>
<br>
Leaving the LDAP settings in place will have no effect *at all* on
the AD authenticator.<br>
<br>
Does that help explain the situation?<br>
<br>
Cheers,<br>
Jules.<br>
<br>
<div class="moz-cite-prefix">On 21/07/2020 00:00, John Thurston via
ZendTo wrote:<br>
</div>
<blockquote type="cite"
cite="mid:WM!ac996c1ade6bc34b86bb4b56b5cd173031fb18091de99250f657c0b73fac60ef859ae3d68b3d9dac684cf8cf5bf49efc!@mx.jul.es">Is
there some way for me to designate some values in preferences.php
as "Just ignore me, please. Don't try to correct this." ?
<br>
<br>
With each update, the upgrade script detects my commented out
values and does me the service of re-enabling them and supplying
default values. I then have to go diff the files, confirm nothing
has actually changed, and re-comment the attributes I don't want.
<br>
<br>
> //'authLDAPStartTLS' => false,
<br>
> //'authLDAPBindDn' =>
'o=MyOrganization,uid=MyUser',
<br>
> //'authLDAPBindPass' => 'SecretPassword',
<br>
> //'authLDAPOrganization' => 'My Organization',
<br>
> //'authLDAPUsernameAttr' => 'uid',
<br>
> //'authLDAPEmailAttr' => 'mail',
<br>
<br>
I tried setting each of these to null strings, hoping that might
trigger the code to ignore the values and also let the upgrade
script leave them unchanged. Bzzzt. I couldn't authenticate.
<br>
<br>
I understand the difficulty in trying to detect what a customer is
trying to do, and how to distinguish "new values" from
"intentionally absent values". It is frustrating, though, to have
to repeat the same manual steps, potentially missing something,
with every update.
<br>
<br>
Maybe there could be a magic string to denote a line not just as a
comment but as a "leave me as a comment" line.
<br>
Maybe triple-slash
<br>
Maybe //!/
<br>
<br>
Or is there already some way to do this that I haven't figured
out?
<br>
<br>
<br>
</blockquote>
<br>
<pre class="moz-signature" cols="72">Jules
--
Julian Field MEng CEng CITP MBCS MIEEE MACM
'Ensanguining the skies
How heavily it dies
Into the west away;
Past touch and sight and sound
Not further to be found,
How hopeless under ground
Falls the remorseful day.' - A.E.Houseman
<a class="moz-txt-link-abbreviated" href="http://www.Zend.To">www.Zend.To</a>
Twitter: @JulesFM
</pre>
</body>
</html>