Age | Commit message (Collapse) | Author | Files | Lines |
|
We were accidentally returning an error when sysdb_getpwnam()
returned zero results internally in sysdb_initgroups(). The
correct behavior here is to return EOK and a result object with
zero entries.
|
|
|
|
We tried to be too clever and only requested the name of the group,
but we require the objectClass to validate the results.
https://fedorahosted.org/sssd/ticket/622
|
|
|
|
This might be useful for examining the test database manually with LDB tools
|
|
When we changed the default min_id to be 1, we forgot about the local
domain. It makes sense to keep the minimum id larger there.
|
|
Use a #define instead of hardcoded string
|
|
This reverts 56d8d19ac9d857580a233d8264e851883b883c67
|
|
|
|
|
|
Fixes https://fedorahosted.org/sssd/ticket/614
|
|
Previously, if a second enumeration request arrived while one was
already being processed, each process would receive only a subset
of the total number of available users or groups. This is because
we were maintaining the response object as a global value in the
NSS responder. The second request would come in, see that the data
set was already populated, and start reading from wherever the
cursor was currently pointed.
With this patch, we now move the cursor to the client context
instead of the global NSS context.
Additionally, this patch completely rewrites the approach to
enumerations in the tevent_req style. This makes it much easier to
follow in the code.
In order to ensure that a slow or malicious client cannot hold
onto a reference for the setent result object indefinitely, we
set an expiration on the object. We use the enum_cache_timeout
here, since that is an appropriate value.
If the timeout fires during the normal operation of the get*ent()
loop of a client program, we will save the current values of the
read index so that we can resume as soon as the object has been
refreshed by an implicit setent call.
Instead of deleting the enumeration result object immediately
after the last in-progress client has read it, we'll keep the
object around for the lifetime of enum_cache_timeout. This way,
additional clients making enumeration requests can still access
the results in-memory.
|
|
Fixes: #585
|
|
Three assignments deleted, two return code inspection added.
Also found and fixed one critical bug caused by dead assignment.
Ticket: #590
|
|
Some assignments deleted, two return value inspections were
added.
Ticket: #589
|
|
Various dead assignments were deleted, some return value inspections
were added.
Ticket: #588
|
|
Dead assignments were deleted. Also prototype of function
sdap_access_decide_offline() has been changed, since its return
code was never used.
Ticket: #586
|
|
When obfuscated password is used in config file, the LDAP backend
converts it back to clear text and uses it to authenticate to the
server.
|
|
A tool to add obfuscated passwords into the SSSD config file
|
|
|
|
|
|
Adds two utility functions to obfuscate a password and inverse to
extract the cleartext password back.
So far, only NSS-based implementation is provided.
|
|
|
|
A refactoring patch that creates a common util/crypto subdir with
per-implementation subdirectories for each underlying crypto library
supported by SSSD.
|
|
In fail_over.c, there was a small bug causing subrequest to have
wrong parent memory context. This patch fixes it.
|
|
Some config options updated, newly documented 12 new options.
|
|
Two needless assignments were deleted, two were complemented
with code checking function results.
Ticket: #582
|
|
So far, the systemd unit file is only packaged but not used in any of
the packaged spec files.
Fixes: #483
|
|
In function get_pw_name when allocation of memory fails, there
were two codepaths which could cause printing of undefined value.
This patch fixes both cases.
Ticket: #580
|
|
If sysdb_attrs_get_el() call failed in function sdap_save_group(),
it would result in printing an undefined value of variable name.
This is now fixed by initializing the variable.
Ticket: #579
|
|
If the allocation on line 678 failed, the value of ret was undefined
in following comparison. ENOMEM is now assigned before the comparison.
Ticket: #578
|
|
In the very unlikely case dp_copy_options was called
with num_options == 0, the return value as well as the left operand
of comparison on line 214 would be undefined.
Ticket: #577
|
|
Fixes: #584
|
|
Signed-off-by: Stephen Gallagher <sgallagh@redhat.com>
|
|
Signed-off-by: Stephen Gallagher <sgallagh@redhat.com>
|
|
Signed-off-by: Stephen Gallagher <sgallagh@redhat.com>
|
|
Signed-off-by: Stephen Gallagher <sgallagh@redhat.com>
|
|
Every ldap function that could possibly create a new connection is now
wrapped in a tevent_req. If the connection is created, we will call the
function again after the socket is ready for writing.
|
|
|
|
Some LDAP servers allow binding with blank passwords. We should
not allow a blank password to authenticate the SSSD.
|
|
|
|
|
|
|
|
They are no longer used. The toplevel Makefile.am builds
everything now.
|
|
|
|
There is no longer a need to have nested Makefiles and configure
scripts. This patch combines the src/ Makefile and configure.ac
into the root.
|
|
All files formerly in common are now being built individually out
of the ding-libs repository.
git clone git://git.fedorahosted.org/git/ding-libs.git
|
|
The initial verification of the old password was returning an
error because we were not explicitly setting dp_err to
DP_ERR_SUCCESS and it was initialized earlier in the function to
DP_ERR_FATAL.
|
|
|
|
Instead of recursively updating all users of each group the user
being queried belongs to, just add or remove membership for the
requested user.
Fixes https://fedorahosted.org/sssd/ticket/478
|