summaryrefslogtreecommitdiffstats
path: root/kolabd/__init__.py
Commit message (Collapse)AuthorAgeFilesLines
* compare namingtext with basedn always in lowercaseDaniel Hoffend2020-02-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: When the hosted_domain_rootdn contains uppercase letters (only happens when crafting our own ldap naming context, or connecting with an existing ldap directory) kolabd doesn't match the namespace and therefore doesn't track changes and kolabd doesn't create or delete the mailboxes. Test Plan: Initial Situation mgmt_root_dn = dc=mgmt,dc=dotlan,dc=info hosted_root_dn = o=Hosting Starting kolabd via cli with debug enabled /usr/sbin/kolabd -l DEBUG -d 9 --user kolab --pid-file /run/kolabd/kolabd.pid Log messages about which domains / naming contexts to watch: 2020-01-17 23:29:35,260 pykolab.daemon DEBUG [8525] Domain 'mgmt.dotlan.info' naming context: 'dc=mgmt,dc=dotlan,dc=info', root dn: 'dc=mgmt,dc=dotlan,dc=info' 2020-01-17 23:29:35,268 pykolab.daemon DEBUG [8525] Domain 'hosting.com' naming context: None, root dn: 'o=Hosting' 2020-01-17 23:29:35,268 pykolab.daemon DEBUG [8525] Naming contexts to synchronize: [None, 'dc=mgmt,dc=dotlan,dc=info'] 2020-01-17 23:29:35,268 pykolab.daemon DEBUG [8525] Result set of domains: ['mgmt.dotlan.info'] Adding a Child domain (testdomain.com): 2020-01-17 23:36:16,505 pykolab.daemon DEBUG [9149] Domain 'mgmt.dotlan.info' naming context: 'dc=mgmt,dc=dotlan,dc=info', root dn: 'dc=mgmt,dc=dotlan,dc=info' 2020-01-17 23:36:16,513 pykolab.daemon DEBUG [9149] Domain 'hosting.com' naming context: None, root dn: 'o=Hosting' 2020-01-17 23:36:16,522 pykolab.daemon DEBUG [9149] Domain 'testdomain.com' naming context: None, root dn: 'ou=testdomain.com,o=Hosting' 2020-01-17 23:36:16,522 pykolab.daemon DEBUG [9149] Naming contexts to synchronize: [None, 'dc=mgmt,dc=dotlan,dc=info'] 2020-01-17 23:36:16,523 pykolab.daemon DEBUG [9149] Result set of domains: ['mgmt.dotlan.info'] Adding a user doesn't create the mailbox because kolabd isn't watching the naming context of o=Hosting After applying the patch: 2020-01-17 23:38:36,633 pykolab.daemon DEBUG [9499] Domain 'mgmt.dotlan.info' naming context: 'dc=mgmt,dc=dotlan,dc=info', root dn: 'dc=mgmt,dc=dotlan,dc=info' 2020-01-17 23:38:36,646 pykolab.daemon DEBUG [9499] Domain 'hosting.com' naming context: 'o=hosting', root dn: 'o=Hosting' 2020-01-17 23:38:36,655 pykolab.daemon DEBUG [9499] Domain 'testdomain.com' naming context: 'o=hosting', root dn: 'ou=testdomain.com,o=Hosting' 2020-01-17 23:38:36,656 pykolab.daemon DEBUG [9499] Naming contexts to synchronize: ['o=hosting', 'dc=mgmt,dc=dotlan,dc=info'] 2020-01-17 23:38:36,656 pykolab.daemon DEBUG [9499] Result set of domains: ['mgmt.dotlan.info', 'hosting.com'] Creating a user (to prove the patch works) 2020-01-17 23:41:13,756 pykolab.auth DEBUG [9502] LDAP Search Result Data Entry: 2020-01-17 23:41:13,756 pykolab.auth DEBUG [9502] DN: 'uid=jdoe,ou=People,ou=testdomain.com,o=Hosting' 2020-01-17 23:41:13,756 pykolab.auth DEBUG [9502] Entry: {'displayName': ['Doe, John'], 'cn': ['John Doe'], 'mailQuota': ['1048576'], 'preferredLanguage': ['de_DE'], 'userPassword': ['{PBKDF2_SHA256}AAAIABAeq5TwN6vcCAtBi+jspdlAXeGX5v5FV76uVIWxC5cQ4+23wbfR40aYr+SPzT2AP+Pg17N2hFxXDh3OI9qe/j5bE3A4Nz5utCJahvmorowGTIUA0DJrT6kz8Hy2X7PA8wjeZzedKvjdsqODIYDMdDm4DMNMbwU0pVFKgqWYBf7pNCAa/ZZ7lPPIxVXBC3z7Xhmi0mhxzVbY3TjNptxT9lGJ1Z4JCjID8B+BEqpPSKPJzW5sozgqTUYC8EH37bIn+JsmyMbukepz/0DU3oAKcda0j3VOdnfNE3lQ4tBS9e1CrjRVhzx+7H2ehAdu3olq7xHBRW9Po59hP3+X7nvU9C1lwt5stfv7hnEJ15jyy1JXDzoABUUIYxTxGz+uhP1oyuMHAxqxPDrJikdbCBx4ucGLnTnfFXwtAeuMefRsctMl'], 'nsuniqueid': ['6f0ae601-397a11ea-9892ad7b-e428d0cf'], 'objectClass': ['inetorgperson', 'inetuser', 'kolabinetorgperson', 'mailrecipient', 'organizationalperson', 'person', 'top'], 'sn': ['Doe'], 'mail': ['john.doe@testdomain.com'], 'givenName': ['John'], 'modifytimestamp': ['20200117224113Z'], 'uid': ['jdoe']} 2020-01-17 23:41:13,756 pykolab.auth DEBUG [9502] Entry Change Notification attributes: 2020-01-17 23:41:13,757 pykolab.auth DEBUG [9502] Change Type: 1 ('add') 2020-01-17 23:41:13,757 pykolab.auth DEBUG [9502] Previous DN: None Reviewers: #pykolab_developers, vanmeeuwen Reviewed By: #pykolab_developers, vanmeeuwen Differential Revision: https://git.kolab.org/D913
* Fixes T5665: kolabd should now terminate its child processes on exitDaniel Hoffend2019-11-181-4/+9
| | | | | | | | | | | | Summary: This patch ensures that kolabd will terminate his forked childs Test Plan: Tested on Debian 9 and Debian 10 Reviewers: #pykolab_developers, vanmeeuwen Reviewed By: #pykolab_developers, vanmeeuwen Differential Revision: https://git.kolab.org/D853
* restore system umask after fork (fix T5659)Daniel Hoffend2019-11-181-1/+3
| | | | | | | | | | | | Summary: start-stop-daemon behaviour has changed. We must make sure the created pidfile is "secure" and not world-wide-writeable. Reviewers: #pykolab_developers, vanmeeuwen Reviewed By: #pykolab_developers, vanmeeuwen Differential Revision: https://git.kolab.org/D847
* More linting and compatibilityJeroen van Meeuwen (Kolab Systems)2019-10-251-1/+1
|
* More linting and syntax issues resolvedJeroen van Meeuwen (Kolab Systems)2019-10-251-121/+111
|
* Fix SIGPIPE errors in wallace due to closing stderr and reusing FD2 by @fjlJeroen van Meeuwen (Kolab Systems)2019-05-171-0/+4
|
* Call the correct functionsJeroen van Meeuwen (Kolab Systems)2016-07-081-2/+1
|
* Clear out synchronizing domains vs. naming contexts by matching domain root ↵Jeroen van Meeuwen (Kolab Systems)2016-07-071-16/+42
| | | | dns with naming contexts
* CS fixes according to PEP8 (ignored mostly line-length errors only)Aleksander Machniak2016-05-041-9/+9
| | | | | | | | Summary: . Reviewers: #pykolab_developers Differential Revision: https://git.kolab.org/D134
* Update bugzilla url to https://issues.kolab.org.Jeroen van Meeuwen (Kolab Systems)2016-02-291-2/+2
| | | | Resolves T1044
* Correct the use of the format returned by auth.list_domains()Jeroen van Meeuwen (Kolab Systems)2015-10-131-1/+1
|
* Translate naming contexts back to domain name spaces or the list of ↵Jeroen van Meeuwen (Kolab Systems)2015-08-141-0/+1
| | | | processes becomes volatile
* Correct detecting naming contexts for databases to synchronize against, and ↵Jeroen van Meeuwen (Kolab Systems)2015-08-141-4/+18
| | | | using parent domain name spaces for synchronization
* fix typo, remove bracketTimotheus Pokorra2015-08-131-1/+1
|
* Don't use domains.values(), we need only the first value of the tuple(s) of ↵Jeroen van Meeuwen (Kolab Systems)2015-08-121-5/+11
| | | | primary and secondary domain name spaces.
* Close stdin, stdout and stderr, when the process is told to fork(). Also, ↵Jeroen van Meeuwen (Kolab Systems)2015-08-121-5/+28
| | | | fork twice to eliminate session control.
* Use the new domain naming context comparison function to reduce the number ↵Jeroen van Meeuwen (Kolab Systems)2015-03-181-1/+3
| | | | | | of processes against hosted (#4260) Domain name spaces are translated back to the domain that owns the naming context, and skipped a separate process for should the naming context already be synchronized by another process.
* Bug #2491: sleep time until new domains are created should be optionally set ↵Timotheus Pokorra (TBits.net)2014-08-191-1/+5
| | | | in configuration file
* Updated the licensing information according to FSF recommendations.Paul Boddie2014-06-261-7/+7
| | | | Note that cyruslib.py is still "GPLv2 or a later version" unlike the other files.
* Fix inifinite loop for initially connectingJeroen van Meeuwen (Kolab Systems)2014-02-161-1/+2
|
* Avoid connection errors being fatal.Jeroen van Meeuwen (Kolab Systems)2014-02-111-0/+14
| | | | Sleep and continue should we have an empty list of domains
* Pause between starting domain synchronizations if the number of domains ↵Jeroen van Meeuwen (Kolab Systems)2014-01-261-0/+3
| | | | added is greater or equal to 5, for otherwise you will hammer your LDAP server to death
* terminate() processes for domains that have been removedJeroen van Meeuwen (Kolab Systems)2013-10-151-0/+4
|
* Correct unpack error (#2246)Jeroen van Meeuwen (Kolab Systems)2013-09-231-1/+1
|
* Update copyrightJeroen van Meeuwen (Kolab Systems)2013-04-171-1/+1
|
* Check if a domain name space synchronization process is still aliveJeroen van Meeuwen (Kolab Systems)2012-11-301-2/+17
| | | | try/except removing our PID file
* Import the required utilsJeroen van Meeuwen (Kolab Systems)2012-06-131-0/+1
|
* Make use of the new ensure_directory() function (#840)Jeroen van Meeuwen (Kolab Systems)2012-06-131-0/+6
|
* Make sure we use no functions that have been introduced in Python > 2.6 (#803)Jeroen van Meeuwen (Kolab Systems)2012-05-291-6/+10
|
* Resolve pylint long lines issueJeroen van Meeuwen (Kolab Systems)2012-05-171-1/+7
|
* Make as sure as possible, kolabd does not run with any non-kolab privilegesJeroen van Meeuwen (Kolab Systems)2012-05-171-11/+107
|
* Add kolabd systemd fileJeroen van Meeuwen (Kolab Systems)2012-04-191-64/+35
| | | | Refactor process management in kolabd
* Bump pre-releaseJeroen van Meeuwen (Kolab Systems)2012-04-171-1/+6
|
* Insert TODOJeroen van Meeuwen (Kolab Systems)2012-04-081-0/+2
|
* Correct some pylint conventions/warnings/errorsJeroen van Meeuwen (Kolab Systems)2012-03-091-21/+52
|
* Update copyrightdev/entitlementsJeroen van Meeuwen (Kolab Systems)2012-01-041-1/+1
|
* We don't actually care about the parameters sent by signal handlers, but we ↵Jeroen van Meeuwen (Kolab Systems)2011-11-211-2/+2
| | | | | | must accept the correct number of parameters. Fixes #516
* Add signal handlers to kolabd and saslauthdJeroen van Meeuwen (Kolab Systems)2011-11-091-4/+30
| | | | Add -p / --pid-file option to these daemons
* Use one fork per domain name space foundJeroen van Meeuwen (Kolab Systems)2011-10-281-16/+24
|
* Update kolabd synchronizing routineJeroen van Meeuwen (Kolab Systems)2011-09-231-14/+4
|
* Fix the URL to the bugtrackerJeroen van Meeuwen (Kolab Systems)2011-06-171-2/+2
|
* Increase documentation but primarily write out TODOsJeroen van Meeuwen (Kolab Systems)2011-03-261-0/+7
|
* Remove the saslauthd component from kolabdJeroen van Meeuwen (Kolab Systems)2011-03-231-45/+0
|
* Enhance logging and config system in kolabdJeroen van Meeuwen (Kolab Systems)2011-03-231-16/+27
| | | | Reuse the existing Auth() instance (avoid duplicate log entries)
* Remove saslauthd options and code from the main daemonJeroen van Meeuwen (Kolab Systems)2011-03-131-17/+4
|
* Expunging folders is part of the loopJeroen van Meeuwen (Kolab Systems)2011-03-081-1/+1
|
* Relicense from GPLv2 only to GPLv3+Jeroen van Meeuwen (Kolab Systems)2011-03-071-1/+1
|
* Add an enhanced SASL authentication daemon to the Kolab daemonJeroen van Meeuwen (Kolab Systems)2011-03-071-2/+79
|
* Fix typoJeroen van Meeuwen (Kolab Systems)2011-03-021-1/+1
|
* Increment thread_countJeroen van Meeuwen (Kolab Systems)2011-02-211-0/+1
|