summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Update makefileHEADmasterAlexander Sulfrian2020-08-251-8/+5
|
* pre_bind: Get gold account status for user bindsAlexander Sulfrian2016-11-201-2/+2
|
* pre_search: Fix objectClass name in filter stringAlexander Sulfrian2016-11-191-2/+2
|
* pre_bind: Handle all binds and save extension dataAlexander Sulfrian2016-11-191-35/+119
| | | | | | The pre_bind method has to handle the binds for service accounts, too. This way it can save the service name and gold service status after a successful bind.
* POST_BIND: Remove hook.Alexander Sulfrian2016-11-191-88/+0
| | | | | | | post_bind is not exected, if the pre_bind method has completed the bind operation. Additionally the post_bind method does not have access to the SLAPI_CONN_DN (bind dn). So we have to find another method to save the extension data.
* Use connection private data storage for gold statusAlexander Sulfrian2016-11-191-82/+269
| | | | | | | After a bind operation the service_name and the gold_service status is saved in a connection data extension, so that it can be used by the other methods and f.e. the pre_entry method do not need to build the service dn again.
* pre_search: Set filter to speed up the search for gold accountsAlexander Sulfrian2016-11-191-1/+65
| | | | | We do not want to execute the pre_entry hooks for all accounts just to skip them in the result.
* Fix versionAlexander Sulfrian2016-11-171-1/+1
|
* Get service_base_dn from the plugin argumentsAlexander Sulfrian2016-11-111-4/+43
|
* pre_entry: Check for gold service even if a user is authedAlexander Sulfrian2016-11-111-0/+13
| | | | | | If a user was authed for a gold service and is searching for other users, only gold users should be returned. So we need to get the service entry from the service rdn of the authenticated user.
* pre_entry: Only return gold accounts for gold servicesAlexander Sulfrian2016-11-111-7/+16
| | | | | If an authenticated gold service is searching for accounts, it should only get the gold accounts.
* pre_bind: Check permissions for gold servicesAlexander Sulfrian2016-11-111-1/+21
| | | | | Authentiction for gold services should only be possible for gold accounts.
* get_service_dn: Get the service dn from service nameAlexander Sulfrian2016-11-111-0/+25
| | | | | This is not really working, because the base_dn of the service accounts is missing. This will be added later.
* is_service: Add possibility to check for gold servicesAlexander Sulfrian2016-11-111-3/+16
|
* is_user: Add possibility to check for gold accountsAlexander Sulfrian2016-11-111-7/+24
|
* Use new custom objectClass: splineAccountAlexander Sulfrian2016-11-111-2/+2
|
* Fix MakefileAlexander Sulfrian2016-11-111-5/+7
|
* Rewrite the base dn if needed in pre_searchAlexander Sulfrian2016-01-211-0/+78
| | | | | | | | If a service wants to get the user information by searching for the user DN explicitly (maybe with a BASE search scope), we need to drop the virtual prefix for the service (the virtual entry might not even exists or does not have the requested user infromation). The pre_search plugin method is executed before all searches and modifies the TARGET_DN if required.
* Fix memory leakAlexander Sulfrian2016-01-211-1/+1
| | | | | | slapu_pblock_set copies the DN into the pblock, because it first has to do a normalization. So we do not need to create a copy of the supplied value and have to free the supplied string afterwards.
* Remove auth_methodAlexander Sulfrian2016-01-201-3/+1
| | | | We cannot use auth_method, because we cannot set it (denied by openldap).
* Rewrite the user accounts for bound user connections, tooAlexander Sulfrian2016-01-201-1/+39
| | | | | | If a connection is bind against a virtual service password entry, we need to rewrite the user entries, too. A service might search for the user entry after authorizing to get the userdata.
* Use Slapi_RDN to build the new DNAlexander Sulfrian2016-01-191-3/+6
|
* Change is_service signatureAlexander Sulfrian2016-01-191-18/+20
| | | | | The new signature allows to call is_service, without the requirement to free the pointer to the service name, if the service name is not required.
* Replace dn_contains_uid with is_userAlexander Sulfrian2016-01-191-21/+12
| | | | | The function dn_contains_uid was used to check, if an entry is an user account. This check uses the objectClass now.
* Check objectClass in is_serviceAlexander Sulfrian2016-01-191-4/+8
| | | | All service accounts now have to have the serviceAccount object class.
* Fix commentAlexander Sulfrian2016-01-191-1/+1
|
* Code styleAlexander Sulfrian2016-01-191-3/+2
|
* Remove ugly hack to free all memory by manually creating copyAlexander Sulfrian2016-01-191-39/+93
| | | | | | If using "slapi_entry_dup" it will create two internal copies of the old DN, that could not be free'd without reference to internal data structures. So now we create a new Slapi_Entry, copy all attributes and set the new DN.
* Fix freeing of DN of Slapi_EntryAlexander Sulfrian2016-01-171-7/+40
| | | | | | Add entry_set_dn to set a new DN and free the memory of the both copies inside the Slapi_Entry. This currently uses an ugly hack and makes assumptions about internal data structures.
* Do not free the return value of slapi_attr_get_valuesetAlexander Sulfrian2016-01-161-4/+1
| | | | | | slapi_attr_get_valueset returns a pointer from the Slapi_Attr* argument. If you free the Slapi_ValueSet and the Slapi_Attr structures the valuesset is freed twice and this causes memory corruption and segfaults later.
* Initialize variablesAlexander Sulfrian2016-01-161-7/+7
|
* Free more memoryAlexander Sulfrian2016-01-161-7/+24
|
* Add Doxyfile and doc target in MakefileAlexander Sulfrian2016-01-143-1/+2369
|
* Add more documentationAlexander Sulfrian2016-01-141-10/+114
| | | | Add doxygen compatible comments to most functions.
* Add pre_entry plugin to fake the DN of the search resultsAlexander Sulfrian2015-12-151-0/+130
|
* Remove unused variablesAlexander Sulfrian2015-12-151-10/+4
|
* Free memory of parent_dn generated with slapi_dn_parentAlexander Sulfrian2015-12-151-1/+6
|
* Do not generate parent_dn inside dn_contains_uidAlexander Sulfrian2015-12-151-6/+6
| | | | | | The function could be used in more cases, if it checks if the supplied DN contains a uid and does not generate the parent_dn. The parent_dn is generated before calling the function.
* Use const where possibleAlexander Sulfrian2015-12-151-1/+1
|
* Add password fallbackAlexander Sulfrian2015-11-301-0/+244
| | | | Add pre_bind function for service password fallback.
* Save plugin_id for internal operationsAlexander Sulfrian2015-11-301-0/+3
|
* Add .gitignoreAlexander Sulfrian2015-11-301-0/+2
|
* Basic plugin structureAlexander Sulfrian2015-11-302-0/+39
|
* Initial commitAlexander Sulfrian2015-11-240-0/+0