History log of /sssd/src/responder/nss/nsssrv_cmd.c
Revision Date Author Comments Expand
4169fb26ea2ff93c19ecdad6e09382732ea5deeb 20-Oct-2016 Pavel Březina <pbrezina@redhat.com>

cache_req: switch to new code This patch switch the old switch-based cache req code to the new plugin-based. Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

dcdf292567d50e5cc527766c1944dcf6a8ecacc5 10-Oct-2016 Sumit Bose <sbose@redhat.com>

nss: allow UPNs in SSS_NSS_GETSIDBYNAME and SSS_NSS_GETORIGBYNAME When adding support for UPNs, email addresses and aliases the SSS_NSS_GETSIDBYNAME and SSS_NSS_GETORIGBYNAME request were forgotten. This patch adds the missing support because it might be irritating if getpwnam() can resolve the name but the other requests fail. The same logic as for the plain user lookup is used, this add some code duplication which is expected to be removed when the nss responder will be switched to use the new cache_req code. Resolves https://fedorahosted.org/sssd/ticket/3194 Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

f31610a9ba26b46de9eeab2b0719ff6ad8961104 16-Aug-2016 Pavel Březina <pbrezina@redhat.com>

NSS: Remove unused functions When removing the old data provider I noticed that those functions are not used at all. Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>

6f0a0ae7599e3947c0b2e4649039f85829e57637 10-Aug-2016 Lukas Slebodnik <lslebodn@redhat.com>

NSS: Use correct name for invalidating memory cache After refactoring of sysdb, we get and internal fully qualified name from backend in org.freedesktop.sssd.dataprovider_rev.initgrCheck Previously we got short name and we created fq name in nss_update_initgr_memcache. Memory cache still need to use short names if it was specified. This patch uses right name in different places. Reviewed-by: Petr Cech <pcech@redhat.com> Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

62df78512145db94b51c5573d4df1737197e368a 29-Jul-2016 Sumit Bose <sbose@redhat.com>

NSS: use different neg cache name for UPN searches If Kerberos principals or email address have the same domain suffix as the domain itself the first user lookup by name might have already added the name to the negative cache and the second lookup by UPN/email will skip the domain because of the neg cache entry. To avoid this a special name with a '@' prefix is used here. Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

447b1da857368678990b54cd6b9cfed940357c44 29-Jul-2016 Sumit Bose <sbose@redhat.com>

NSS: continue with UPN/email search if name was not found Currently we only search for UPNs if the domain part of the name was not know, with Kerberos aliases and email addresses we have to do this even if the domain name is a know domain. Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

91767924bdf9b5a28e8902206a40348d6c83a139 29-Jul-2016 Sumit Bose <sbose@redhat.com>

NSS: add user email to fill_orig() The IPA server must send the email address of a user to the clients to allow login by email. Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

1594701fbdc341069e11cff9a85e7a795e52db3d 29-Jul-2016 Sumit Bose <sbose@redhat.com>

views: properly override group member names Resolves https://fedorahosted.org/sssd/ticket/2948 Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

f426a8b81a871188348b41aa52803a05bc3a02de 07-Jul-2016 Sumit Bose <sbose@redhat.com>

NSS: Fix domain for UPN based lookups Since sysdb_search_user_by_upn() searches the whole cache we have to set the domain so that it matches the result. Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

2dcf7b9b65df21f2aee6cdf051a7fbdef6dfe034 07-Jul-2016 Jakub Hrozek <jhrozek@redhat.com>

NSS: Fix NSS responder to cope with fully-qualified usernames Adds a utility function sized_output_name() which wraps the output_name() function and returns the sized_struct structure. This function is used when formatting the output name for the client, but also when saving/deleting the memory cache entries. Its sister function sized_member_name() is very similar, but infers the domain name from memberuid or ghost attribute. Because all names internally are used in the same format, the logic to append domain or format the usename for output in the fill_XXX() family of functions is much simpler. In general, adding a domain suffix no longer relies in the domain being a subdomain, but only the dom->fqnames The parse_member() function was removed because it is no longer required. The nss test was amended to store names in the internal fqdn format on input and checks for either shortnames or qualified names with the right format created using sss_tc_fqname() on output. Reviewed-by: Sumit Bose <sbose@redhat.com>

accff8ebe158251b1d25a95b3b035fe7e08fd1ee 07-Jul-2016 Jakub Hrozek <jhrozek@redhat.com>

UTIL: expand_homedir_template manages usernames internally expand_homedir_template() can be considered an outward-facing interface, therefore the function and its input structure will accept the internal name format and parse it internally into a username and domain component. Reviewed-by: Sumit Bose <sbose@redhat.com>

4f3a9d837a55b49448eca3c713c85a406207e523 29-Jun-2016 Simo Sorce <simo@redhat.com>

Responders: Make the client context more generic This is useufl to allow reusing the responder code with other protocols. Store protocol data and responder state data behind opaque pointers and use tallog_get_type to check they are of the right type. This also allows to store per responder state_ctx so that, for example, the autofs responder does not have to carry useless variables used only by the nss responder. Resolves: https://fedorahosted.org/sssd/ticket/2918 Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

/sssd/src/responder/autofs/autofs_private.h /sssd/src/responder/autofs/autofssrv.c /sssd/src/responder/autofs/autofssrv_cmd.c /sssd/src/responder/common/responder.h /sssd/src/responder/common/responder_cmd.c /sssd/src/responder/common/responder_common.c /sssd/src/responder/ifp/ifpsrv.c nsssrv.c nsssrv_cmd.c nsssrv_netgroup.c nsssrv_private.h nsssrv_services.c /sssd/src/responder/pac/pacsrv.c /sssd/src/responder/pac/pacsrv_cmd.c /sssd/src/responder/pam/pamsrv.c /sssd/src/responder/pam/pamsrv_cmd.c /sssd/src/responder/ssh/sshsrv.c /sssd/src/responder/ssh/sshsrv_cmd.c /sssd/src/responder/sudo/sudosrv.c /sssd/src/responder/sudo/sudosrv_cmd.c /sssd/src/tests/cmocka/common_mock_resp.c /sssd/src/tests/cmocka/common_mock_resp.h /sssd/src/tests/cmocka/test_nss_srv.c /sssd/src/tests/cmocka/test_pam_srv.c
9c88f837ffacf6548c13825589b327de1a5525f3 09-Jun-2016 Sumit Bose <sbose@redhat.com>

nss-idmap: add sss_nss_getnamebycert() Reviewed-by: Jakub Hrozek <jhrozek@redhat.com> Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>

1a45124f3f300f9afdcb08eab0938e5e7d0534d9 09-Jun-2016 Sumit Bose <sbose@redhat.com>

NSS: add SSS_NSS_GETNAMEBYCERT request Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

8822520e6552bbf5ad1b62a4f88dd31a9c8475f1 09-Jun-2016 Sumit Bose <sbose@redhat.com>

nss: return user certificate base64 encoded Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

dc936929c01647c0fc116a112cee200156328037 09-Jun-2016 Sumit Bose <sbose@redhat.com>

nss: include certificates in full result list Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

c34f3f7d2a4d9f50109d13cd7c9f2cbb9a11b3d0 11-May-2016 Petr Cech <pcech@redhat.com>

RESPONDER: Removing ncache from nss_ctx This patch switches ncache from nss_ctx to resp_ctx. Reviewed-by: Pavel Březina <pbrezina@redhat.com>

0393f0d44ac92035de29a8bc8b2005db6d90b640 11-May-2016 Petr Cech <pcech@redhat.com>

NEGCACHE: Removing timeout from sss_ncache_check_* It removes timeout parameter from check functions of negative cache. Timeout is set ny init function and it is handled internally. API change: * int sss_ncache_check_...(struct sss_nc_ctx *ctx, int ttl, <----- timeout vanished struct sss_domain_info *dom, ...); Resolves: https://fedorahosted.org/sssd/ticket/2317 Reviewed-by: Pavel Březina <pbrezina@redhat.com>

37b467244f48869ef3690c908033da8ba37635c0 08-Mar-2016 Jakub Hrozek <jhrozek@redhat.com>

NSS: Move a DEBUG message so that it's less confusing Reviewed-by: Pavel Březina <pbrezina@redhat.com>

1b8858b1611db5048592f477059ca5ad66d7ceb1 21-Jan-2016 Michal Židek <mzidek@redhat.com>

NSS: do not skip cache check for netgoups When refresh_expired_interval was not zero, the NSS responder only refreshed netgroup cache using background periodic task and ignored SYSDB_CACHE_EXPIRE attribute. With this behaviour it was impossible to get new netgroup from remote server even after sss_cache tool was used to expire existing entry in the cache. Resolves: https://fedorahosted.org/sssd/ticket/2912 Reviewed-by: Pavel Březina <pbrezina@redhat.com>

343b053bc61792023003d077ae81c05ff1676a89 04-Nov-2015 Sumit Bose <sbose@redhat.com>

NSS: fix a use-after-free issue While handling well-known SIDs a debug statement tries to access memory that is already freed. This can be seen with the following output from valgrind. ==17600== Invalid read of size 4 ==17600== at 0x805ACC6: nss_cmd_getbysid (nsssrv_cmd.c:5458) ==17600== by 0x805AF41: nss_cmd_getnamebysid (nsssrv_cmd.c:5509) ==17600== by 0x80662F4: sss_cmd_execute (responder_cmd.c:161) ==17600== by 0x8067015: client_cmd_execute (responder_common.c:249) ==17600== by 0x80671F5: client_recv (responder_common.c:283) ==17600== by 0x806741C: client_fd_handler (responder_common.c:335) ==17600== by 0x45F5112: epoll_event_loop (tevent_epoll.c:728) ==17600== by 0x45F5112: epoll_event_loop_once (tevent_epoll.c:926) ==17600== by 0x45F32EE: std_event_loop_once (tevent_standard.c:114) ==17600== by 0x45EF3BF: _tevent_loop_once (tevent.c:530) ==17600== by 0x45EF5AB: tevent_common_loop_wait (tevent.c:634) ==17600== by 0x45F326E: std_event_loop_wait (tevent_standard.c:140) ==17600== by 0x45EF647: _tevent_loop_wait (tevent.c:653) ==17600== Address 0x4b248a0 is 72 bytes inside a block of size 88 free'd ==17600== at 0x402C26D: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) ==17600== by 0x45FEC9E: _talloc_free_internal (talloc.c:1057) ==17600== by 0x45FEC9E: _talloc_free (talloc.c:1581) ==17600== by 0x8066085: sss_cmd_done (responder_cmd.c:93) ==17600== by 0x805A9B0: nss_check_well_known_sid (nsssrv_cmd.c:5382) ==17600== by 0x805AC86: nss_cmd_getbysid (nsssrv_cmd.c:5455) ==17600== by 0x805AF41: nss_cmd_getnamebysid (nsssrv_cmd.c:5509) ==17600== by 0x80662F4: sss_cmd_execute (responder_cmd.c:161) ==17600== by 0x8067015: client_cmd_execute (responder_common.c:249) ==17600== by 0x80671F5: client_recv (responder_common.c:283) ==17600== by 0x806741C: client_fd_handler (responder_common.c:335) ==17600== by 0x45F5112: epoll_event_loop (tevent_epoll.c:728) ==17600== by 0x45F5112: epoll_event_loop_once (tevent_epoll.c:926) ==17600== by 0x45F32EE: std_event_loop_once (tevent_standard.c:114) ==17600== The patch contains a change to the unit tests which frees the memory in the wrapper for sss_cmd_done() too. This allows to detect this kind of issue in the unit tests as well. Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>

877b92e80bde510d5cd9f03dbf01e2bcf73ab072 23-Oct-2015 Michal Židek <mzidek@redhat.com>

util: Update get_next_domain's interface Update get next domain to be able to include disbled domains and change the interface to accept flags instead of multiple booleans. Ticket: https://fedorahosted.org/sssd/ticket/2673 Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

/sssd/src/confdb/confdb.c /sssd/src/db/sysdb_subdomains.c /sssd/src/monitor/monitor.c /sssd/src/providers/ad/ad_subdomains.c /sssd/src/providers/dp_refresh.c /sssd/src/providers/ipa/ipa_subdomains.c /sssd/src/providers/ipa/ipa_subdomains_server.c /sssd/src/providers/ldap/sdap_domain.c /sssd/src/responder/autofs/autofssrv_cmd.c /sssd/src/responder/common/negcache.c /sssd/src/responder/common/responder_cache_req.c /sssd/src/responder/common/responder_common.c /sssd/src/responder/common/responder_get_domains.c /sssd/src/responder/ifp/ifp_cache.c /sssd/src/responder/ifp/ifp_domains.c /sssd/src/responder/ifp/ifp_groups.c /sssd/src/responder/ifp/ifp_users.c nsssrv_cmd.c nsssrv_netgroup.c nsssrv_services.c /sssd/src/responder/pam/pamsrv_cmd.c /sssd/src/responder/sudo/sudosrv_get_sudorules.c /sssd/src/tests/cmocka/test_utils.c /sssd/src/tools/common/sss_tools.c /sssd/src/tools/sss_cache.c /sssd/src/tools/sss_debuglevel.c /sssd/src/tools/sss_override.c /sssd/src/util/domain_info_utils.c /sssd/src/util/usertools.c /sssd/src/util/util.h
2f793681b4debbe015815f908dc12c0463711609 14-Oct-2015 Pavel Březina <pbrezina@redhat.com>

nss: send original name and id with local views if possible Resolves: https://fedorahosted.org/sssd/ticket/2833 Reviewed-by: Sumit Bose <sbose@redhat.com> Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

8ded8b2f4a57d1833fd230307218d8b07a571785 08-Oct-2015 Sumit Bose <sbose@redhat.com>

nss: fix UPN lookups for sub-domain users Reviewed-by: Sumit Bose <sbose@redhat.com>

87e0dcaff945f8b8f30030309e16ba26935fcb7b 18-Sep-2015 Pavel Březina <pbrezina@redhat.com>

views: allow ghost members for LOCAL view LOCAL view does not allow the case when both ghost member and user override is created so it is safe to allow ghost members for this view. Resolves: https://fedorahosted.org/sssd/ticket/2790 Reviewed-by: Sumit Bose <sbose@redhat.com>

11e8f3ecdddf8edd8b1bbe9f41b49ce8b709b92a 31-Aug-2015 Petr Cech <pcech@redhat.com>

UTIL: Function 2string for enum sss_cli_command Improvement of debug messages. Instead of:"(0x0400): Running command [17]..." We could see:"(0x0400): Running command [17][SSS_NSS_GETPWNAM]..." (It's not used in sss_client. There are only hex numbers of commands.) Resolves: https://fedorahosted.org/sssd/ticket/2708 Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>

b9901fe3d6cfe05cd75a2440c0f9c7985aea36c6 20-Aug-2015 Lukas Slebodnik <lslebodn@redhat.com>

NSS: Fix use after free It can happed if there are two domains and user is not found in the first one. ==29279== Invalid read of size 1 ==29279== at 0x4C2CBA2: strlen (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==29279== by 0x89A7AC4: talloc_strdup (in /usr/lib64/libtalloc.so.2.1.2) ==29279== by 0x11668A: nss_cmd_initgroups_search (nsssrv_cmd.c:4191) ==29279== by 0x118B27: nss_cmd_getby_dp_callback (nsssrv_cmd.c:1208) ==29279== by 0x10F2B4: nsssrv_dp_send_acct_req_done (nsssrv_cmd.c:759) ==29279== by 0x126AFB: sss_dp_internal_get_done (responder_dp.c:802) ==29279== by 0x56EA861: ??? (in /usr/lib64/libdbus-1.so.3.7.4) ==29279== by 0x56EDB50: dbus_connection_dispatch (in /usr/lib64/libdbus-1.so.3.7.4) ==29279== by 0x50721E1: sbus_dispatch (sssd_dbus_connection.c:96) ==29279== by 0x879B22E: tevent_common_loop_timer_delay (tevent_timed.c:341) ==29279== by 0x879C239: epoll_event_loop_once (tevent_epoll.c:911) ==29279== by 0x879A936: std_event_loop_once (tevent_standard.c:114) ==29279== Address 0xbbad240 is 96 bytes inside a block of size 106 free'd ==29279== at 0x4C2AD17: free (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==29279== by 0x89A46E3: _talloc_free (in /usr/lib64/libtalloc.so.2.1.2) ==29279== by 0x116679: nss_cmd_initgroups_search (nsssrv_cmd.c:4190) ==29279== by 0x118B27: nss_cmd_getby_dp_callback (nsssrv_cmd.c:1208) ==29279== by 0x10F2B4: nsssrv_dp_send_acct_req_done (nsssrv_cmd.c:759) ==29279== by 0x126AFB: sss_dp_internal_get_done (responder_dp.c:802) ==29279== by 0x56EA861: ??? (in /usr/lib64/libdbus-1.so.3.7.4) ==29279== by 0x56EDB50: dbus_connection_dispatch (in /usr/lib64/libdbus-1.so.3.7.4) ==29279== by 0x50721E1: sbus_dispatch (sssd_dbus_connection.c:96) ==29279== by 0x879B22E: tevent_common_loop_timer_delay (tevent_timed.c:341) ==29279== by 0x879C239: epoll_event_loop_once (tevent_epoll.c:911) ==29279== by 0x879A936: std_event_loop_once (tevent_standard.c:114) Resolves: https://fedorahosted.org/sssd/ticket/2749 Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

dda0258705de7255e6ec54b7f9adbde83a220996 05-Aug-2015 Lukas Slebodnik <lslebodn@redhat.com>

NSS: Initgr memory cache should work with fq names We need to stored two versions of name to the initgroups memory cache. Otherwise it could be stored many times if sssd is configured with case_sensitive = false. It would be impossible to invalidate all version of names after user login. As a result of this wrong user groups could be returned from initgroups memory cache. Therefore we store raw name provided by glibc function and internal sanitized fully qualified name, which is unique for particular user. This patch also increase average space for initgroups because there are also stored two quite long names in case of fq names. Resolves: https://fedorahosted.org/sssd/ticket/2712 Reviewed-by: Michal Židek <mzidek@redhat.com>

ea7839cec593b4a7c678fab52ab864518db6699b 05-Aug-2015 Lukas Slebodnik <lslebodn@redhat.com>

mmap: Invalidate initgroups memory cache after any change Initgroups memory cache was invalidated only in case on removed user. it should be invalidated also after changes in group membership. Resolves: https://fedorahosted.org/sssd/ticket/2716 Reviewed-by: Michal Židek <mzidek@redhat.com>

c2cc00e8d70c4df880d76093d4b0e3ee7f2ee23f 27-Jul-2015 Sumit Bose <sbose@redhat.com>

nss: use negative cache for sid-by-id requests Since requests by ID are not assized to a specific domain SSSD might check the ID in domains where the ID does not exists even if the ID is already in the sysdb cache of the right domain. For requests where already a memory cache is available like e.g. getpwuid() and getgrgid() this has no negative impact because the requests are answered directly from the cache most of the time without hitting SSSD. As long as there is no use-case which does not use the memory cache those requests do not need an update. But for request like sid-by-id where currently no memory cache is available there are quite some additional costs especially for trusted domains. Resolves https://fedorahosted.org/sssd/ticket/2731 Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

e1aed98d7c195f844ac8e85050d04f3ca5f899b3 27-Jul-2015 Sumit Bose <sbose@redhat.com>

negcache: allow domain name for UID and GID Related to https://fedorahosted.org/sssd/ticket/2731 Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

4f1897ad419790834573643e88ac03e6c5c1c4be 16-Jul-2015 Sumit Bose <sbose@redhat.com>

nss_check_name_of_well_known_sid() improve name splitting Currently in the default configuration nss_check_name_of_well_known_sid() can only split fully-qualified names in the user@domain.name style. DOM\user style names will cause an error and terminate the whole request. With this patch both styles can be handled by default, additionally if the name could not be split nss_check_name_of_well_known_sid() returns ENOENT which can be handled more gracefully by the caller. Resolves https://fedorahosted.org/sssd/ticket/2717 Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>

7c83c23177cdb43e23fe19935356e1319e2b6f39 03-Jul-2015 Lukas Slebodnik <lslebodn@redhat.com>

nss: Invalidate entry in initgr mmap cache If user is removed from sysdb cache then it should be also removed from initgroups memory cache. Resolves: https://fedorahosted.org/sssd/ticket/2485 Reviewed-by: Michal Židek <mzidek@redhat.com>

6d292632a7176540dd317bba7457a12a3634789a 03-Jul-2015 Lukas Slebodnik <lslebodn@redhat.com>

mmap_cache: Invalidate entry in right memory cache If group was not found in nss_cmd_getgrnam_search then we tied to invalidate entry in memory cache. But function delete_entry_from_memory cache only invalidated in passwd memory cache. Reviewed-by: Michal Židek <mzidek@redhat.com>

ebf6735dd4f71bf3dc9105e5d04d11e744c64a59 03-Jul-2015 Lukas Slebodnik <lslebodn@redhat.com>

nss: Store entries in responder to initgr mmap cache Resolves: https://fedorahosted.org/sssd/ticket/2485 Reviewed-by: Michal Židek <mzidek@redhat.com>

fd60528321fd52720222ec35b895ade54cccb48d 22-May-2015 Lukas Slebodnik <lslebodn@redhat.com>

nss: Do not ignore default vaue of SYSDB_INITGR_EXPIRE When SYSDB_INITGR_EXPIRE had default value (0) then value of SYSDB_CACHE_EXPIRE was used as initgroups expire attribute. The right apoach is already used in responder_cache_req.c Reviewed-by: Pavel Březina <pbrezina@redhat.com>

35b178d02dfd293778aefbc0b465a5a3a4b6cd8f 06-May-2015 Sumit Bose <sbose@redhat.com>

NSS: check for overrides before calling backend Currently the flag that the input data in a user or group lookup request might be an override value is only set if no cached entry was found. If the cached entry of an object with overrides is expired and a request with the override value as input is processed the flag is not set and the backend might not be able to find the right entry on the server. Typically this should not happen because of mid-point refreshes. To reproduce this create a FreeIPA user and override the login name for a specific view. On a client which has this view applied call getent passwd overridename sss_cache -E getent passwd overridename The second getent command will still show the right output but in the logs a [sss_dp_get_reply] (0x1000): Got reply from Data Provider - DP error code: 3 errno: 0 error message: Account info lookup failed message can be found for the second request. Related to https://fedorahosted.org/sssd/ticket/2642 Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

6a074a5917a83c8414949b8c9c2b6d044bb652e6 24-Apr-2015 Jakub Hrozek <jhrozek@redhat.com>

nss: Use negcache for getbysid requests Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>

da3fcbec493dd8d7f5af1d6c6be2a37440a1442e 09-Apr-2015 Jakub Hrozek <jhrozek@redhat.com>

NSS: Reset negcache after checking domains The NSS responder periodically re-checks subdomains. We need to reset the negative cache each time the check finishes to allow the negative cache to contain entries from different domains. Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>

c2cb78c264ecf50d3a621ef16d1fe8026a39d135 26-Mar-2015 Pavel Reichl <preichl@redhat.com>

Fix a few typos in comments Reviewed-by: Pavel Březina <pbrezina@redhat.com>

87f8bee53ee1b4ca87b602ff8536bc5fd5b5b595 17-Mar-2015 Lukas Slebodnik <lslebodn@redhat.com>

Add missing new lines to debug messages Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

/sssd/src/confdb/confdb_setup.c /sssd/src/db/sysdb_autofs.c /sssd/src/db/sysdb_sudo.c /sssd/src/db/sysdb_views.c /sssd/src/monitor/monitor.c /sssd/src/monitor/monitor_netlink.c /sssd/src/providers/ad/ad_common.c /sssd/src/providers/ad/ad_init.c /sssd/src/providers/ad/ad_subdomains.c /sssd/src/providers/data_provider_be.c /sssd/src/providers/dp_dyndns.c /sssd/src/providers/dp_ptask.c /sssd/src/providers/ipa/ipa_access.c /sssd/src/providers/ipa/ipa_hbac_rules.c /sssd/src/providers/ipa/ipa_hostid.c /sssd/src/providers/ipa/ipa_selinux.c /sssd/src/providers/ipa/ipa_subdomains.c /sssd/src/providers/krb5/krb5_child.c /sssd/src/providers/krb5/krb5_wait_queue.c /sssd/src/providers/ldap/ldap_id.c /sssd/src/providers/ldap/sdap.c /sssd/src/providers/ldap/sdap_async.c /sssd/src/providers/ldap/sdap_async_connection.c /sssd/src/providers/ldap/sdap_async_initgroups.c /sssd/src/providers/ldap/sdap_utils.c /sssd/src/responder/autofs/autofssrv_cmd.c /sssd/src/responder/common/responder_dp.c nsssrv_cmd.c nsssrv_netgroup.c /sssd/src/responder/pac/pacsrv_cmd.c /sssd/src/responder/pac/pacsrv_utils.c /sssd/src/responder/pam/pamsrv.c /sssd/src/responder/sudo/sudosrv_get_sudorules.c /sssd/src/responder/sudo/sudosrv_query.c /sssd/src/sbus/sssd_dbus_server.c /sssd/src/tests/krb5_child-test.c /sssd/src/tools/files.c /sssd/src/tools/sss_sync_ops.c /sssd/src/util/debug.c /sssd/src/util/domain_info_utils.c /sssd/src/util/find_uid.c /sssd/src/util/server.c /sssd/src/util/sss_ini.c /sssd/src/util/sss_krb5.c /sssd/src/util/sss_semanage.c /sssd/src/util/usertools.c
ff19b24a93a50c8a62b5c2621e45d101e3a00781 12-Mar-2015 Jakub Hrozek <jhrozek@redhat.com>

NSS: Handle ENOENT when doing initgroups by UPN https://fedorahosted.org/sssd/ticket/2598 We need to return an empty result in cases an initgroups lookup by UPN doesn't return anything. Please note testing with "id user" is not sufficient as id calls a getpwnam first. Reviewed-by: Pavel Reichl <preichl@redhat.com>

fa0a9bad84d060a1adf8dd44f35d366e14f54d58 18-Feb-2015 Lukas Slebodnik <lslebodn@redhat.com>

RESPONDERS: Warn to syslog about colliding objects Resolves: https://fedorahosted.org/sssd/ticket/2203 Reviewed-by: Pavel Reichl <preichl@redhat.com>

866ab45027c83fafb7f7f45d34d3e1e7721b77dc 30-Jan-2015 Sumit Bose <sbose@redhat.com>

fill_id() fix LE/BE issue with wrong data type Related to https://fedorahosted.org/sssd/ticket/1588 Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

d6ddc35574ba897cf9b5de3350086d9d8604f06f 23-Jan-2015 Sumit Bose <sbose@redhat.com>

nss: fix SID lookups Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>

7543052f562f157f7b17fdc46a6777d80c0cb3bd 20-Jan-2015 Sumit Bose <sbose@redhat.com>

nss: Add original DN and memberOf to origbyname request IPA HBAC evaluation relies on the original values for DN and memberOf attributes. Resolves https://fedorahosted.org/sssd/ticket/2560 Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

a4d64002b5ca763622bde240d27797d361ba0388 20-Jan-2015 Sumit Bose <sbose@redhat.com>

nss: refactor fill_orig() The two loops in fill_orig were almost identical. Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

5f4d896ec8e06476f4282b562b1044de14c48ecf 20-Jan-2015 Sumit Bose <sbose@redhat.com>

nss: make fill_orig() multi-value aware Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

4bbcc2d6d3f16b015796818746a45134861c93a4 17-Dec-2014 Pavel Reichl <preichl@redhat.com>

SYSDB: sysdb_search_object_by_sid returns ENOENT sysdb_search_object_by_sid returns ENOENT if no results are found. Part od solution for: https://fedorahosted.org/sssd/ticket/1991 Fixes: https://fedorahosted.org/sssd/ticket/2520 Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>

d7b90921c1a404f0d9fb8384a8fd55fd15b86916 17-Dec-2014 Pavel Reichl <preichl@redhat.com>

NSS: nss_cmd_getbysid_search return ENOENT Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>

1a818ee8e01136166e7f2b37a441e7e779c6b1f4 10-Nov-2014 Lukas Slebodnik <lslebodn@redhat.com>

NSS: Fix warning enumerated type mixed with another type src/responder/nss/nsssrv_cmd.c:688: mixed_enum_type: enumerated type mixed with another type "enum sss_dp_acct_type" was mixed with type "int". ANSI C is not very strict in this. Reviewed-by: Michal Židek <mzidek@redhat.com>

f9f513ee1dd4ca10ab980a180d0468ae5167d021 05-Nov-2014 Sumit Bose <sbose@redhat.com>

Add ssh pubkey to origbyname request Since the IPA clients expects that the extdom plugin delivers the default view data for a given user this patch adds the public SSH key to the list of returned attributes of the getorigbyname request so that it can be send back to the clients. Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

1a9f66352070d71a6b998c5afbc268ba6fddc51c 05-Nov-2014 Sumit Bose <sbose@redhat.com>

sysdb_add_overrides_to_object: add new parameter and multi-value support With the new parameter an attribute list other than the default one can be used. Override attributes with multiple values (e.g. SSH public keys) are now supported as well. Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

e4549c5364461644723361d688badde7fe137a25 05-Nov-2014 Sumit Bose <sbose@redhat.com>

nss: return user_attributes in origbyname request To allow IPA clients to offer special attributes of AD users form trusted domain the extdom plugin on the IPA server must send them to the clients. The extdom plugin already uses sss_nss_getorigbyname() to get attributes like the SID and the user principal name. This patch adds the attributes given by the NSS/IFP user_attributes option to the list of attributes returned by sss_nss_getorigbyname(). Fixes https://fedorahosted.org/sssd/ticket/2464 Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

f933190722886ff23eab8148b473915908bc8c23 04-Nov-2014 Pavel Reichl <preichl@redhat.com>

NSS: disable midpoint refresh for netgroups Disable midpoint refresh for netgroups if periodical refresh of expired netgroups is enabled (refresh_expired_interval) Resolves: https://fedorahosted.org/sssd/ticket/2102 Reviewed-by: Pavel Březina <pbrezina@redhat.com>

4b2b722319f11c81c06f488f3962a6b6280f4b9f 27-Oct-2014 Sumit Bose <sbose@redhat.com>

nss: group enumeration fix The view/override patches introduced and issue with group enumeration where all groups are returned with the same name. This patch should fix it. Fixes: https://fedorahosted.org/sssd/ticket/2475 Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>

e88d426def412c0dde83e15fe17cdf374ee70166 22-Oct-2014 Denis Kutin <dekutin@ya.ru>

NSS: Possibility to use any shells in 'allowed_shells' Resolves: https://fedorahosted.org/sssd/ticket/2219 Signed-off-by: Pavel Reichl <preichl@redhat.com> Reviewed-by: Jakub Hrozek <jhrozek@redhat.com> Reviewed-by: Pavel Reichl <preichl@redhat.com>

396fb27b17d66261e2d15146a7c925be8d637226 20-Oct-2014 Sumit Bose <sbose@redhat.com>

nss: make enumeration requests aware of views Reviewed-by: Pavel Březina <pbrezina@redhat.com>

a983272f1afa8dbae3ecd4425b04649601732a71 20-Oct-2014 Sumit Bose <sbose@redhat.com>

sid2name: return name without views applied Make sure that the original name of an object without any overrides applied is returned by sid2name requests. Reviewed-by: Pavel Březina <pbrezina@redhat.com>

afbe298d8d99c037056c1d3878812d98783309b0 20-Oct-2014 Sumit Bose <sbose@redhat.com>

nss: add view support for getgr* requests Make group lookups view and override aware. Relates to https://fedorahosted.org/sssd/ticket/2375 Reviewed-by: Pavel Březina <pbrezina@redhat.com>

f1d5f72459ec7d776e66c4516da2c1b9c6c1a84d 20-Oct-2014 Sumit Bose <sbose@redhat.com>

nss: add view support to initgroups request Make sysdb request view and override aware. Relates to https://fedorahosted.org/sssd/ticket/2375 Reviewed-by: Pavel Březina <pbrezina@redhat.com>

e6b476c9749737f0979fe6460f0d6ced08351db3 20-Oct-2014 Sumit Bose <sbose@redhat.com>

nss: add view support for getpwnam/getpwuid requests For user lookups view and override aware calls to search the cache and read attribute values are used. Relates to https://fedorahosted.org/sssd/ticket/2375 Reviewed-by: Pavel Březina <pbrezina@redhat.com>

229c292143dcd4120acb022682b5b7d0aca622dd 14-Oct-2014 Sumit Bose <sbose@redhat.com>

nss: add SSS_NSS_GETORIGBYNAME request This patch adds a new request to the nss responder which follows the same flow as a SSS_NSSGETSIDBYNAME request but returns more data than just the SID. The data is returned as pairs of \0-terminated strings where the first string is the sysdb attribute name and the second the corresponding value. The main use case is on the FreeIPA server to make additional user and group data available to the extdom plugin which then send this data to SSSD running on FreeIPA clients. Reviewed-by: Pavel Březina <pbrezina@redhat.com> Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>

adf9c23d663c308cfeeaa5ad0a33c399c85b27ec 12-Oct-2014 Pavel Reichl <preichl@redhat.com>

NSS: UPN as a template expansion for homedir mappings Fixes: https://fedorahosted.org/sssd/ticket/2340 Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

f6e008fe677ffcf8781c1d5154544066ea7ca9d4 01-Oct-2014 Michal Zidek <mzidek@redhat.com>

nss: Preserve case of group members Preserve case of group members in getgrnam when 'case_sensitive = preserving' is set. Fixes: https://fedorahosted.org/sssd/ticket/2453 Reviewed-by: Pavel Reichl <preichl@redhat.com>

742ccb4b821b0d320fefb5eb0f1eafe82da8548c 16-Sep-2014 Sumit Bose <sbose@redhat.com>

name2sid: Check negative cache for users and groups Since we cannot know if a SID belongs to a user or a group a lookup should only fail if the given name is in both the negative cache for the users and the groups. Currently if the SID for a group called 'abc' should be looked up and the negative cache for the users contain an entry for 'abc' the request fails. Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

61b58801f1e37c054affc99f6fe900f7b3ef7972 05-Sep-2014 Lukas Slebodnik <lslebodn@redhat.com>

NSS: Use right domain for group members with fq names If we query group from subdomain it can contain users from different domains. All members from subdomain have fully qualified name, but member from main domain aren't. In function fill_members, we extracted name and domain with function fill_members. Later, we called function sss_fqname the first time with queried group domain and the second time with parsed domain. It caused following error in nss responder: [fill_members] (0x0040): Failed to generate a fully qualified name for member [user2_dom1@sssdad_tree.com] of group [group2_dom2@sssdad_tree.com]! Skipping The test test_nss_getgrnam_mix_dom_fqdn passed, because name of main domain and name of subdomain had the same length, Therefore there was not problem in function fill_members with calling sss_fqname with different domains. This patch also changes name of subdomain to prevent such problems in future. Reviewed-by: Pavel Reichl <preichl@redhat.com>

899d1bdc048cd74518170d7d9535d76d3f46d4af 01-Sep-2014 Sumit Bose <sbose@redhat.com>

PAM, NSS: allow UPN login names With this patch the NSS and PAM responders can handle user principal names besides the fully qualified user names. User principal names are build from a user name and a domain suffix separated by an '@' sign. But the domain suffix does not necessarily has to be the same as the configured domain name in sssd.conf of the dynamically discovered DNS domain name of a domain. The typical use case is an Active Directory forest with lots of different domains. To not force the users to remember the name of the individual domain they belong to the AD administrator can set a common domain suffix for all users from all domains in the forest. This is typically the domain name used for emails to make it even more easy to the users to remember it. Since SSSD splits name and domain part at the '@' sign and the common domain suffix might not be resolvable by DNS or the given user is not a member of that domain (e.g. in the case where the forest root is used as common domain suffix) SSSD might fail to look up the user. With this patch the NSS and PAM responder will do an extra lookup for a UPN if the domain part of the given name is not known or the user was not found and the login name contained the '@' sign. Resolves https://fedorahosted.org/sssd/ticket/1749

7d2437adc312d3322d36043ff458fafdb4b7f2cf 01-Sep-2014 Sumit Bose <sbose@redhat.com>

NSS: check_cache() add extra option This patch adds a new parameter to check_cache() to allow to set the extra value which is send to the backend during lookup requests.

f3a5ac1a50c1fccd0801023658e42d2093e1a33a 13-Aug-2014 Jakub Hrozek <jhrozek@redhat.com>

Make the space override responder-agnostic https://fedorahosted.org/sssd/ticket/2397 In order to make the override_space option usable by other responders, we need to move the override_space option to the generic responder structure. Reviewed-by: Pavel Březina <pbrezina@redhat.com> Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>

1f3127e88a87953f059c9a70d3582ae1719594b1 13-Aug-2014 Jakub Hrozek <jhrozek@redhat.com>

Only replace space with the specified substitution https://fedorahosted.org/sssd/ticket/2397 - make sss_replace_whitespaces only replace space (' ') not any whitespace - make sss_replace_whitespaces only replace a single char, not the whole string - rename CONFDB_NSS_OVERRIDE_DEFAULT_WHITESPACE to CONFDB_NSS_OVERRIDE_DEFAULT_SPACE - rename the override_default_whitespace option to override_space - rename sss_replace_whitespaces() to sss_replace_space() - rename sss_reverse_replace_whitespaces() to sss_reverse_replace_space() - rename nctx->override_default_wsp_str to nctx->override_space - make the return value of sss_replace_space non-const to avoid freeing the result without compilation warnings Reviewed-by: Pavel Březina <pbrezina@redhat.com> Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>

ff22e829fd73fc53027d1e6ca005a9ac334086dd 29-Jul-2014 Michal Zidek <mzidek@redhat.com>

case_sensitivity = preserving If case_sensitivity is set to 'preserving', getXXnam returns name attribute in the same format as stored in LDAP. Fixes: https://fedorahosted.org/sssd/ticket/2367 Reviewed-by: Pavel Reichl <preichl@redhat.com>

21bc143c2855638242e9dfe01ea66198b5883b8a 28-Jul-2014 Lukas Slebodnik <lslebodn@redhat.com>

NSS: Replace spaces with specified string in names. This patch add possibility to replace whitespace in user and group names with a specified string. With string "-", sssd will return the same result as winbind enabled option "winbind normalize names" Resolves: https://fedorahosted.org/sssd/ticket/1854 Reviewed-by: Pavel Reichl <preichl@redhat.com> Reviewed-by: Michal Židek <mzidek@redhat.com>

ae0a5011e2644eaa482ea1b9e1451eff05c676b9 02-Jun-2014 Lukas Slebodnik <lslebodn@redhat.com>

NSS: Add option to expand homedir template format LDAP server can contain template for home directory instead of plain string. This patch adds new expand option "%H", which will be replaced with value from configuration option homedir_substring (from sssd.conf) Resolves: https://fedorahosted.org/sssd/ticket/1853

5cd660aaa885bca95ac3dca660bb77e5786d5f8e 02-Jun-2014 Lukas Slebodnik <lslebodn@redhat.com>

NSS: Refactor expand_homedir_template Function expand_homedir_template had lot of parameters. After adding new expand option, all function call should be rewritten, (usually argument NULL will be added) This patch wraps all necessary arguments to structure.

40dd828529cf01291daf0f075b850783409e8c05 18-Mar-2014 Pavel Reichl <preichl@redhat.com>

refactor calls of sss_parse_name sss_parse_name now supports NULL as output parameters so existing calls passing arguments which were never read were substituted by NULL. Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>

83bf46f4066e3d5e838a32357c201de9bd6ecdfd 12-Feb-2014 Nikolai Kondrashov <Nikolai.Kondrashov@redhat.com>

Update DEBUG* invocations to use new levels Use a script to update DEBUG* macro invocations, which use literal numbers for levels, to use bitmask macros instead: grep -rl --include '*.[hc]' DEBUG . | while read f; do mv "$f"{,.orig} perl -e 'use strict; use File::Slurp; my @map=qw" SSSDBG_FATAL_FAILURE SSSDBG_CRIT_FAILURE SSSDBG_OP_FAILURE SSSDBG_MINOR_FAILURE SSSDBG_CONF_SETTINGS SSSDBG_FUNC_DATA SSSDBG_TRACE_FUNC SSSDBG_TRACE_LIBS SSSDBG_TRACE_INTERNAL SSSDBG_TRACE_ALL "; my $text=read_file(\*STDIN); my $repl; $text=~s/ ^ ( .* \b (DEBUG|DEBUG_PAM_DATA|DEBUG_GR_MEM) \s* \(\s* )( [0-9] )( \s*, ) ( \s* ) ( .* ) $ / $repl = $1.$map[$3].$4.$5.$6, length($repl) <= 80 ? $repl : $1.$map[$3].$4."\n".(" " x length($1)).$6 /xmge; print $text; ' < "$f.orig" > "$f" rm "$f.orig" done Reviewed-by: Jakub Hrozek <jhrozek@redhat.com> Reviewed-by: Stephen Gallagher <sgallagh@redhat.com> Reviewed-by: Simo Sorce <simo@redhat.com>

/sssd/src/confdb/confdb.c /sssd/src/confdb/confdb_setup.c /sssd/src/db/sysdb.c /sssd/src/db/sysdb_ops.c /sssd/src/db/sysdb_ranges.c /sssd/src/db/sysdb_search.c /sssd/src/db/sysdb_upgrade.c /sssd/src/monitor/monitor.c /sssd/src/monitor/monitor_netlink.c /sssd/src/monitor/monitor_sbus.c /sssd/src/providers/data_provider_be.c /sssd/src/providers/data_provider_callbacks.c /sssd/src/providers/data_provider_fo.c /sssd/src/providers/data_provider_opts.c /sssd/src/providers/dp_auth_util.c /sssd/src/providers/dp_pam_data_util.c /sssd/src/providers/fail_over.c /sssd/src/providers/ipa/ipa_access.c /sssd/src/providers/ipa/ipa_auth.c /sssd/src/providers/ipa/ipa_common.c /sssd/src/providers/ipa/ipa_hbac_common.c /sssd/src/providers/ipa/ipa_hbac_hosts.c /sssd/src/providers/ipa/ipa_hbac_rules.c /sssd/src/providers/ipa/ipa_hbac_services.c /sssd/src/providers/ipa/ipa_hbac_users.c /sssd/src/providers/ipa/ipa_id.c /sssd/src/providers/ipa/ipa_init.c /sssd/src/providers/ipa/ipa_netgroups.c /sssd/src/providers/krb5/krb5_access.c /sssd/src/providers/krb5/krb5_auth.c /sssd/src/providers/krb5/krb5_child.c /sssd/src/providers/krb5/krb5_child_handler.c /sssd/src/providers/krb5/krb5_common.c /sssd/src/providers/krb5/krb5_delayed_online_authentication.c /sssd/src/providers/krb5/krb5_init.c /sssd/src/providers/krb5/krb5_init_shared.c /sssd/src/providers/krb5/krb5_renew_tgt.c /sssd/src/providers/krb5/krb5_utils.c /sssd/src/providers/krb5/krb5_wait_queue.c /sssd/src/providers/ldap/ldap_auth.c /sssd/src/providers/ldap/ldap_child.c /sssd/src/providers/ldap/ldap_common.c /sssd/src/providers/ldap/ldap_id.c /sssd/src/providers/ldap/ldap_id_cleanup.c /sssd/src/providers/ldap/ldap_id_netgroup.c /sssd/src/providers/ldap/ldap_init.c /sssd/src/providers/ldap/sdap.c /sssd/src/providers/ldap/sdap_access.c /sssd/src/providers/ldap/sdap_async.c /sssd/src/providers/ldap/sdap_async_connection.c /sssd/src/providers/ldap/sdap_async_enum.c /sssd/src/providers/ldap/sdap_async_groups.c /sssd/src/providers/ldap/sdap_async_initgroups.c /sssd/src/providers/ldap/sdap_async_initgroups_ad.c /sssd/src/providers/ldap/sdap_async_netgroups.c /sssd/src/providers/ldap/sdap_async_users.c /sssd/src/providers/ldap/sdap_child_helpers.c /sssd/src/providers/ldap/sdap_fd_events.c /sssd/src/providers/ldap/sdap_id_op.c /sssd/src/providers/proxy/proxy_auth.c /sssd/src/providers/proxy/proxy_child.c /sssd/src/providers/proxy/proxy_id.c /sssd/src/providers/proxy/proxy_init.c /sssd/src/providers/proxy/proxy_netgroup.c /sssd/src/resolv/async_resolv.c /sssd/src/responder/common/negcache.c /sssd/src/responder/common/responder_cmd.c /sssd/src/responder/common/responder_common.c /sssd/src/responder/common/responder_dp.c nsssrv.c nsssrv_cmd.c nsssrv_netgroup.c nsssrv_private.h nsssrv_services.c /sssd/src/responder/pam/pam_LOCAL_domain.c /sssd/src/responder/pam/pamsrv.c /sssd/src/responder/pam/pamsrv_cmd.c /sssd/src/responder/pam/pamsrv_dp.c /sssd/src/sbus/sbus_client.c /sssd/src/sbus/sssd_dbus_common.c /sssd/src/sbus/sssd_dbus_connection.c /sssd/src/sbus/sssd_dbus_server.c /sssd/src/tests/auth-tests.c /sssd/src/tests/files-tests.c /sssd/src/tests/resolv-tests.c /sssd/src/tests/sysdb-tests.c /sssd/src/tests/sysdb_ssh-tests.c /sssd/src/tools/selinux.c /sssd/src/tools/sss_cache.c /sssd/src/tools/sss_groupadd.c /sssd/src/tools/sss_groupdel.c /sssd/src/tools/sss_groupmod.c /sssd/src/tools/sss_groupshow.c /sssd/src/tools/sss_sync_ops.c /sssd/src/tools/sss_useradd.c /sssd/src/tools/sss_userdel.c /sssd/src/tools/sss_usermod.c /sssd/src/tools/tools_util.c /sssd/src/tools/tools_util.h /sssd/src/util/check_and_open.c /sssd/src/util/child_common.c /sssd/src/util/crypto/nss/nss_obfuscate.c /sssd/src/util/crypto/nss/nss_util.c /sssd/src/util/debug.c /sssd/src/util/find_uid.c /sssd/src/util/nscd.c /sssd/src/util/signal.c /sssd/src/util/sss_krb5.c /sssd/src/util/sss_ldap.c /sssd/src/util/user_info_msg.c /sssd/src/util/usertools.c /sssd/src/util/util.c
a3c8390d19593b1e5277d95bfb4ab206d4785150 12-Feb-2014 Nikolai Kondrashov <Nikolai.Kondrashov@redhat.com>

Make DEBUG macro invocations variadic Use a script to update DEBUG macro invocations to use it as a variadic macro, supplying format string and its arguments directly, instead of wrapping them in parens. This script was used to update the code: grep -rwl --include '*.[hc]' DEBUG . | while read f; do mv "$f"{,.orig} perl -e \ 'use strict; use File::Slurp; my $text=read_file(\*STDIN); $text=~s#(\bDEBUG\s*\([^(]+)\((.*?)\)\s*\)\s*;#$1$2);#gs; print $text;' < "$f.orig" > "$f" rm "$f.orig" done Reviewed-by: Jakub Hrozek <jhrozek@redhat.com> Reviewed-by: Stephen Gallagher <sgallagh@redhat.com> Reviewed-by: Simo Sorce <simo@redhat.com>

/sssd/src/confdb/confdb.c /sssd/src/confdb/confdb_setup.c /sssd/src/db/sysdb.c /sssd/src/db/sysdb_autofs.c /sssd/src/db/sysdb_idmap.c /sssd/src/db/sysdb_ops.c /sssd/src/db/sysdb_ranges.c /sssd/src/db/sysdb_search.c /sssd/src/db/sysdb_selinux.c /sssd/src/db/sysdb_services.c /sssd/src/db/sysdb_ssh.c /sssd/src/db/sysdb_subdomains.c /sssd/src/db/sysdb_sudo.c /sssd/src/db/sysdb_upgrade.c /sssd/src/monitor/monitor.c /sssd/src/monitor/monitor_netlink.c /sssd/src/monitor/monitor_sbus.c /sssd/src/providers/ad/ad_access.c /sssd/src/providers/ad/ad_common.c /sssd/src/providers/ad/ad_domain_info.c /sssd/src/providers/ad/ad_dyndns.c /sssd/src/providers/ad/ad_id.c /sssd/src/providers/ad/ad_init.c /sssd/src/providers/ad/ad_srv.c /sssd/src/providers/ad/ad_subdomains.c /sssd/src/providers/data_provider_be.c /sssd/src/providers/data_provider_callbacks.c /sssd/src/providers/data_provider_fo.c /sssd/src/providers/data_provider_opts.c /sssd/src/providers/dp_auth_util.c /sssd/src/providers/dp_dyndns.c /sssd/src/providers/dp_pam_data_util.c /sssd/src/providers/dp_ptask.c /sssd/src/providers/dp_refresh.c /sssd/src/providers/fail_over.c /sssd/src/providers/fail_over_srv.c /sssd/src/providers/ipa/ipa_access.c /sssd/src/providers/ipa/ipa_auth.c /sssd/src/providers/ipa/ipa_autofs.c /sssd/src/providers/ipa/ipa_common.c /sssd/src/providers/ipa/ipa_config.c /sssd/src/providers/ipa/ipa_dyndns.c /sssd/src/providers/ipa/ipa_hbac_common.c /sssd/src/providers/ipa/ipa_hbac_hosts.c /sssd/src/providers/ipa/ipa_hbac_rules.c /sssd/src/providers/ipa/ipa_hbac_services.c /sssd/src/providers/ipa/ipa_hbac_users.c /sssd/src/providers/ipa/ipa_hostid.c /sssd/src/providers/ipa/ipa_hosts.c /sssd/src/providers/ipa/ipa_id.c /sssd/src/providers/ipa/ipa_idmap.c /sssd/src/providers/ipa/ipa_init.c /sssd/src/providers/ipa/ipa_netgroups.c /sssd/src/providers/ipa/ipa_s2n_exop.c /sssd/src/providers/ipa/ipa_selinux.c /sssd/src/providers/ipa/ipa_selinux_maps.c /sssd/src/providers/ipa/ipa_srv.c /sssd/src/providers/ipa/ipa_subdomains.c /sssd/src/providers/ipa/ipa_subdomains_ext_groups.c /sssd/src/providers/ipa/ipa_subdomains_id.c /sssd/src/providers/ipa/ipa_sudo.c /sssd/src/providers/krb5/krb5_access.c /sssd/src/providers/krb5/krb5_auth.c /sssd/src/providers/krb5/krb5_become_user.c /sssd/src/providers/krb5/krb5_child.c /sssd/src/providers/krb5/krb5_child_handler.c /sssd/src/providers/krb5/krb5_common.c /sssd/src/providers/krb5/krb5_delayed_online_authentication.c /sssd/src/providers/krb5/krb5_init.c /sssd/src/providers/krb5/krb5_init_shared.c /sssd/src/providers/krb5/krb5_renew_tgt.c /sssd/src/providers/krb5/krb5_utils.c /sssd/src/providers/krb5/krb5_wait_queue.c /sssd/src/providers/ldap/ldap_access.c /sssd/src/providers/ldap/ldap_auth.c /sssd/src/providers/ldap/ldap_child.c /sssd/src/providers/ldap/ldap_common.c /sssd/src/providers/ldap/ldap_id.c /sssd/src/providers/ldap/ldap_id_cleanup.c /sssd/src/providers/ldap/ldap_id_enum.c /sssd/src/providers/ldap/ldap_id_netgroup.c /sssd/src/providers/ldap/ldap_id_services.c /sssd/src/providers/ldap/ldap_init.c /sssd/src/providers/ldap/sdap.c /sssd/src/providers/ldap/sdap_access.c /sssd/src/providers/ldap/sdap_async.c /sssd/src/providers/ldap/sdap_async_autofs.c /sssd/src/providers/ldap/sdap_async_connection.c /sssd/src/providers/ldap/sdap_async_enum.c /sssd/src/providers/ldap/sdap_async_groups.c /sssd/src/providers/ldap/sdap_async_groups_ad.c /sssd/src/providers/ldap/sdap_async_initgroups.c /sssd/src/providers/ldap/sdap_async_initgroups_ad.c /sssd/src/providers/ldap/sdap_async_nested_groups.c /sssd/src/providers/ldap/sdap_async_netgroups.c /sssd/src/providers/ldap/sdap_async_services.c /sssd/src/providers/ldap/sdap_async_sudo.c /sssd/src/providers/ldap/sdap_async_sudo_hostinfo.c /sssd/src/providers/ldap/sdap_async_sudo_timer.c /sssd/src/providers/ldap/sdap_async_users.c /sssd/src/providers/ldap/sdap_autofs.c /sssd/src/providers/ldap/sdap_child_helpers.c /sssd/src/providers/ldap/sdap_dyndns.c /sssd/src/providers/ldap/sdap_fd_events.c /sssd/src/providers/ldap/sdap_id_op.c /sssd/src/providers/ldap/sdap_idmap.c /sssd/src/providers/ldap/sdap_range.c /sssd/src/providers/ldap/sdap_refresh.c /sssd/src/providers/ldap/sdap_reinit.c /sssd/src/providers/ldap/sdap_sudo.c /sssd/src/providers/ldap/sdap_sudo_cache.c /sssd/src/providers/proxy/proxy_auth.c /sssd/src/providers/proxy/proxy_child.c /sssd/src/providers/proxy/proxy_id.c /sssd/src/providers/proxy/proxy_init.c /sssd/src/providers/proxy/proxy_netgroup.c /sssd/src/providers/proxy/proxy_services.c /sssd/src/providers/simple/simple_access.c /sssd/src/providers/simple/simple_access_check.c /sssd/src/resolv/async_resolv.c /sssd/src/resolv/async_resolv_utils.c /sssd/src/responder/autofs/autofssrv.c /sssd/src/responder/autofs/autofssrv_cmd.c /sssd/src/responder/autofs/autofssrv_dp.c /sssd/src/responder/common/negcache.c /sssd/src/responder/common/responder_cmd.c /sssd/src/responder/common/responder_common.c /sssd/src/responder/common/responder_dp.c /sssd/src/responder/common/responder_get_domains.c nsssrv.c nsssrv_cmd.c nsssrv_mmap_cache.c nsssrv_netgroup.c nsssrv_private.h nsssrv_services.c /sssd/src/responder/pac/pacsrv.c /sssd/src/responder/pac/pacsrv_cmd.c /sssd/src/responder/pac/pacsrv_utils.c /sssd/src/responder/pam/pam_LOCAL_domain.c /sssd/src/responder/pam/pam_helpers.c /sssd/src/responder/pam/pamsrv.c /sssd/src/responder/pam/pamsrv_cmd.c /sssd/src/responder/pam/pamsrv_dp.c /sssd/src/responder/ssh/sshsrv.c /sssd/src/responder/ssh/sshsrv_cmd.c /sssd/src/responder/ssh/sshsrv_dp.c /sssd/src/responder/sudo/sudosrv.c /sssd/src/responder/sudo/sudosrv_cmd.c /sssd/src/responder/sudo/sudosrv_dp.c /sssd/src/responder/sudo/sudosrv_get_sudorules.c /sssd/src/responder/sudo/sudosrv_query.c /sssd/src/sbus/sbus_client.c /sssd/src/sbus/sssd_dbus_common.c /sssd/src/sbus/sssd_dbus_connection.c /sssd/src/sbus/sssd_dbus_server.c /sssd/src/sss_client/ssh/sss_ssh_authorizedkeys.c /sssd/src/sss_client/ssh/sss_ssh_knownhostsproxy.c /sssd/src/tests/auth-tests.c /sssd/src/tests/cmocka/test_dyndns.c /sssd/src/tests/cmocka/test_fqnames.c /sssd/src/tests/cmocka/test_nss_srv.c /sssd/src/tests/cmocka/test_utils.c /sssd/src/tests/common_dom.c /sssd/src/tests/common_tev.c /sssd/src/tests/debug-tests.c /sssd/src/tests/files-tests.c /sssd/src/tests/krb5_child-test.c /sssd/src/tests/resolv-tests.c /sssd/src/tests/simple_access-tests.c /sssd/src/tests/sysdb-tests.c /sssd/src/tests/sysdb_ssh-tests.c /sssd/src/tools/files.c /sssd/src/tools/selinux.c /sssd/src/tools/sss_cache.c /sssd/src/tools/sss_debuglevel.c /sssd/src/tools/sss_groupadd.c /sssd/src/tools/sss_groupdel.c /sssd/src/tools/sss_groupmod.c /sssd/src/tools/sss_groupshow.c /sssd/src/tools/sss_seed.c /sssd/src/tools/sss_sync_ops.c /sssd/src/tools/sss_useradd.c /sssd/src/tools/sss_userdel.c /sssd/src/tools/sss_usermod.c /sssd/src/tools/tools_mc_util.c /sssd/src/tools/tools_util.c /sssd/src/tools/tools_util.h /sssd/src/util/authtok.c /sssd/src/util/backup_file.c /sssd/src/util/check_and_open.c /sssd/src/util/child_common.c /sssd/src/util/crypto/libcrypto/crypto_base64.c /sssd/src/util/crypto/libcrypto/crypto_obfuscate.c /sssd/src/util/crypto/nss/nss_obfuscate.c /sssd/src/util/crypto/nss/nss_util.c /sssd/src/util/debug.c /sssd/src/util/domain_info_utils.c /sssd/src/util/find_uid.c /sssd/src/util/nscd.c /sssd/src/util/server.c /sssd/src/util/signal.c /sssd/src/util/sss_ini.c /sssd/src/util/sss_krb5.c /sssd/src/util/sss_krb5.h /sssd/src/util/sss_ldap.c /sssd/src/util/sss_nss.c /sssd/src/util/sss_selinux.c /sssd/src/util/sss_ssh.c /sssd/src/util/sss_tc_utf8.c /sssd/src/util/user_info_msg.c /sssd/src/util/usertools.c /sssd/src/util/util.c /sssd/src/util/util.h /sssd/src/util/util_lock.c /sssd/src/util/well_known_sids.c
0f4e627ca2999d67fd122c0dbb562dce89deb283 11-Feb-2014 Jakub Hrozek <jhrozek@redhat.com>

NSS: Fix DEBUG formatting of cmdctx->id Sometimes a UID/GID value was printed using the %d format specifier which caused overflows for very large values of ID. Reviewed-by: Lukáš Slebodník <lslebodn@redhat.com>

d8057ec487e452038f0106042021fa612bbb8555 05-Feb-2014 Michal Zidek <mzidek@redhat.com>

responder: Use SAFEALIGN macros where appropriate. https://fedorahosted.org/sssd/ticket/1359

99bde105680e0202ab451623ff7201a90824b780 05-Feb-2014 Pavel Reichl <preichl@redhat.com>

Revert "NSS: add support for subdomain_homedir" This reverts commit 1dc7694a1cbc62b0d7e23cc1369579e5ce0071e8.

1dc7694a1cbc62b0d7e23cc1369579e5ce0071e8 15-Jan-2014 Pavel Reichl <preichl@redhat.com>

NSS: add support for subdomain_homedir Resolves: https://fedorahosted.org/sssd/ticket/2169

d57529a867940e83ed27f8c2326bde7f07db7b9a 15-Jan-2014 Jakub Hrozek <jhrozek@redhat.com>

NSS: Use plain user name when expanding homedir

c86904baad32fbf9e66bf1cdc667aa5e683b48ba 12-Jan-2014 Stef Walter <stefw@redhat.com>

NSS: Don't use printf(3) on user provided strings. This also fixes several corner cases and crashers. It's not prudent to pass user input to (even admin) input as a format string to printf, and various distros now check for this. This can cause accessing memory incorrectly, and various also various libc abort()'s. In addition various assumptions were made about full_name_format that aren't necessarily the case if the user uses a more complex format. Use safe-printf.c implementation for formatting full_name_format. Adapt the NSS resolver so it doesn't barf on formatted strings that are shorter than expected given a full_name_format. Tests added and updated appropriately.

da5792999440a1294667c91cb520ee5e930ea917 09-Dec-2013 Jakub Hrozek <jhrozek@redhat.com>

NSS: Compare bool with false, not 0

36c266d467e9105041b33e9b1cdcd9ff073d893e 15-Nov-2013 Sumit Bose <sbose@redhat.com>

nss: check for Well-Known SIDs in SID based requests

d115f40c7a3999e3cbe705a2ff9cf0fd493f80fb 15-Nov-2013 Michal Zidek <mzidek@redhat.com>

SYSDB: Drop the sysdb_ctx parameter - module sysdb_ops (part 2)

/sssd/src/db/sysdb.h /sssd/src/db/sysdb_autofs.c /sssd/src/db/sysdb_ops.c /sssd/src/db/sysdb_services.c /sssd/src/db/sysdb_ssh.c /sssd/src/db/sysdb_sudo.c /sssd/src/providers/ipa/ipa_access.c /sssd/src/providers/ipa/ipa_hbac_common.c /sssd/src/providers/ipa/ipa_hbac_hosts.c /sssd/src/providers/ipa/ipa_hbac_services.c /sssd/src/providers/ipa/ipa_hbac_users.c /sssd/src/providers/ipa/ipa_id.c /sssd/src/providers/ipa/ipa_netgroups.c /sssd/src/providers/ipa/ipa_s2n_exop.c /sssd/src/providers/ipa/ipa_subdomains_ext_groups.c /sssd/src/providers/krb5/krb5_auth.c /sssd/src/providers/ldap/ldap_auth.c /sssd/src/providers/ldap/ldap_id.c /sssd/src/providers/ldap/ldap_id_cleanup.c /sssd/src/providers/ldap/ldap_id_netgroup.c /sssd/src/providers/ldap/sdap_async_groups.c /sssd/src/providers/ldap/sdap_async_initgroups.c /sssd/src/providers/ldap/sdap_async_initgroups_ad.c /sssd/src/providers/ldap/sdap_async_nested_groups.c /sssd/src/providers/ldap/sdap_async_netgroups.c /sssd/src/providers/ldap/sdap_async_users.c /sssd/src/providers/ldap/sdap_reinit.c /sssd/src/providers/proxy/proxy_auth.c /sssd/src/providers/proxy/proxy_id.c /sssd/src/providers/proxy/proxy_netgroup.c /sssd/src/providers/simple/simple_access_check.c nsssrv_cmd.c /sssd/src/responder/pac/pacsrv_cmd.c /sssd/src/responder/pac/pacsrv_utils.c /sssd/src/responder/pam/pamsrv_cmd.c /sssd/src/responder/sudo/sudosrv_get_sudorules.c /sssd/src/tests/cmocka/test_nss_srv.c /sssd/src/tests/simple_access-tests.c /sssd/src/tests/sysdb-tests.c /sssd/src/tools/sss_cache.c /sssd/src/tools/sss_groupshow.c /sssd/src/tools/sss_seed.c /sssd/src/tools/sss_sync_ops.c
4c08db0fb0dda3d27b1184248ca5c800d7ce23f0 15-Nov-2013 Michal Zidek <mzidek@redhat.com>

SYSDB: Drop the sysdb_ctx parameter - module sysdb_ops (part 1)

b3292840ebaa747a9fd596ff47cc5d18198361d0 15-Nov-2013 Michal Zidek <mzidek@redhat.com>

SYSDB: Drop the sysdb_ctx parameter from the sysdb_search module

/sssd/src/db/sysdb.c /sssd/src/db/sysdb.h /sssd/src/db/sysdb_search.c /sssd/src/providers/data_provider_be.c /sssd/src/providers/ipa/ipa_subdomains_ext_groups.c /sssd/src/providers/krb5/krb5_access.c /sssd/src/providers/krb5/krb5_auth.c /sssd/src/providers/krb5/krb5_utils.c /sssd/src/providers/ldap/ldap_auth.c /sssd/src/providers/ldap/sdap_access.c /sssd/src/providers/ldap/sdap_async_initgroups.c /sssd/src/providers/proxy/proxy_id.c /sssd/src/python/pysss.c nsssrv_cmd.c nsssrv_netgroup.c /sssd/src/responder/pac/pacsrv_cmd.c /sssd/src/responder/pam/pam_LOCAL_domain.c /sssd/src/responder/pam/pamsrv_cmd.c /sssd/src/responder/ssh/sshsrv_cmd.c /sssd/src/responder/sudo/sudosrv_get_sudorules.c /sssd/src/tests/cmocka/test_nss_srv.c /sssd/src/tests/sysdb-tests.c /sssd/src/tools/sss_groupdel.c /sssd/src/tools/sss_groupmod.c /sssd/src/tools/sss_seed.c /sssd/src/tools/sss_sync_ops.c /sssd/src/tools/sss_sync_ops.h /sssd/src/tools/sss_useradd.c /sssd/src/tools/sss_userdel.c /sssd/src/tools/sss_usermod.c /sssd/src/tools/tools_util.c
66fa032b86f730315b30d62ed58ab17ad065e5ff 07-Nov-2013 Lukas Slebodnik <lslebodn@redhat.com>

NSS: Set packet length for initgroups Some groups could be skipped, but packet length was not trimmed. This is a reason why valgrind reported access to uninitialised bytes. Actually, it isn't a problem, because the first uint32 in body is number of sended gids. Resolves: https://fedorahosted.org/sssd/ticket/2138

6469f42ca80bb9b955875d590485b0d9366491df 07-Nov-2013 Pavel Březina <pbrezina@redhat.com>

free idmapped binary SIDs correctly Resolves: https://fedorahosted.org/sssd/ticket/2133

36aa359c7e01a88161f5ec5c3b15e78e84236ade 30-Oct-2013 Jakub Hrozek <jhrozek@redhat.com>

NSS: Fix parenthesis

000e61bb652400215a9a851d3630cdc7307af398 29-Oct-2013 Jakub Hrozek <jhrozek@redhat.com>

NSS: Print FQDN for groups with mixed domain membership This patch is a workaround until https://fedorahosted.org/sssd/ticket/2129 is fixed properly. Consider a group entry such as: cn: subgroup@subdom ghost: someuser ghost: anotheruser@subdom Currently in order to print all group members as FQDN (which is the default for AD provider), the code needs to iterate over the ghost attributes and parse them into (name,domain) and optionally re-add the domain. The proper fix would be to store always just the FQDN in the hardcoded form of user@domain

444d8f0077644a3701d8e25cd3041db6def43a62 17-Oct-2013 Pavel Březina <pbrezina@redhat.com>

nss: wait for initial subdomains request to finish AD provider downloads domain information and initalizes ID mapping during subdomains request. This information is necessary to lookup objects without POSIX attributes. We need to make sure that we postpone all responder requests until ID mapping is initialized in the provider. Resolves: https://fedorahosted.org/sssd/ticket/2092

d82e648c8e5e86be94b069551998001d4cb3bdab 25-Sep-2013 Jakub Hrozek <jhrozek@redhat.com>

NSS: Failure to store entry negative cache should not be fatal The only effect the failure to store a result to negative cache might have would be a slower lookup next time.

0929629fd69df6e83f9986707b2a6462e0e273d0 25-Sep-2013 Jakub Hrozek <jhrozek@redhat.com>

NSS: Set UID and GID to negative cache after searching all domains https://fedorahosted.org/sssd/ticket/2090 Previously, when searching by UID or GID, the negative cache will only work in case the UID was searched for using fully qualified names.

d0017ae54df06b1be7f6878e6f3bfeabe93c2290 16-Sep-2013 Lukas Slebodnik <lslebodn@redhat.com>

Add missing new line in DEBUG message

8b9fc71516a3da83b6e0e551ec0ad9aaa19bc7bc 28-Aug-2013 Jakub Hrozek <jhrozek@redhat.com>

NSS: Descend into subdomains if enumerate=true Since we now store the enumerate flag in sysdb for subdomains, we can always descend to all available subdomains and if they do not allow enumeration, simply skip them.

39f13b3bf5b3cf79f5f16575403f03b539300dc7 19-Aug-2013 Sumit Bose <sbose@redhat.com>

fill_initgr: add original primary GID if available In some cases when MPG domains are used the information about the original primary group of a user cannot be determined by looking at the explicit group memberships. In those cases the GID related to the original primary group is stored in a special attribute of the user object. This patch adds the GID of the original primary group when available and needed. Fixes https://fedorahosted.org/sssd/ticket/2027

6e2c5a81b6af083d7909a18881971b5d907d65b1 27-Jun-2013 Lukas Slebodnik <lslebodn@redhat.com>

Do not call sss_cmd_done in function check_cache. Function sysdb_getpwnam return more results than 1 and therefore sss_cmd_done was called. Inside of function sss_cmd_done memory was freed, but this freed memory was used in caller functions, therefore sssd crashed. https://fedorahosted.org/sssd/ticket/1980

81774ca7b8c49cd5474c4f77a234bfcd7fe9664f 30-May-2013 Jakub Hrozek <jhrozek@redhat.com>

Remove branching to improve readability

777374243e15c53e7b0a7345e190c1018920be18 30-May-2013 Jakub Hrozek <jhrozek@redhat.com>

Allow flat name in the FQname format https://fedorahosted.org/sssd/ticket/1648 Adds another expansion in the printf format that allows the user to use the domain flat name in the format.

1987bff88e01c74d647dd2db4f541ac311537e1a 30-May-2013 Jakub Hrozek <jhrozek@redhat.com>

Add utility functions for formatting fully-qualified names Instead of using printf-like functions directly, provide two wrappers that would encapsulate formatting the fully-qualified names. No functional change is present in this patch.

7486dea9f5f7b2a6fbbacc6db740a82140b6377c 20-May-2013 Lukas Slebodnik <lslebodn@redhat.com>

Fixing critical format string issues. --missing arguments. --format '%s', but argument is integer. --wrong format string, examle: '%\n'

6eadbf9dab2ad9a9463dc23e91c9e2fc804c1e9b 03-May-2013 Sumit Bose <sbose@redhat.com>

Add SID related calls to the NSS responder The patch adds 4 new calls to the NSS responder: - SSS_NSS_GETSIDBYNAME - SSS_NSS_GETSIDBYID - SSS_NSS_GETNAMEBYSID - SSS_NSS_GETIDBYSID to either return the SIDs of the requested object or map the SID to the name or the POSIX ID of the related object.

4668b4765530cf37289235e483f301100cc1ae21 02-May-2013 Sumit Bose <sbose@redhat.com>

Remove unused TALLOC_CTX from responder_get_domain() Recent refactoring removed the need to copy the domain info data of sub-domains because the related objects will not be removed from memory anymore.

b3e247cef1f1c81a24ae7759903c11289744e94c 21-Apr-2013 Sumit Bose <sbose@redhat.com>

Refactoring: remove duplicated code in nss responder Different user and group lookup requests used nearly identical code, this patch unifies some of the related code paths.

6fc4702a3037d9bb5b27bcb58f70edf1802b7b19 10-Apr-2013 Jakub Hrozek <jhrozek@redhat.com>

Allow using flatname for subdomain home dir template https://fedorahosted.org/sssd/ticket/1609

1f469537545a20b62cb35966033be24e1c0cae39 19-Mar-2013 Lukas Slebodnik <lslebodn@redhat.com>

Removing unused declaration of functions and variable. Variables dir_cc and file_cc are used in three modules: krb5_common.c, krb5_utils.c, krb5_child-test.c, therefore should be declared with extern in krb5_utils.h.

6d678b590c0fca3f942e6ab1e4b6156d478a97e9 04-Mar-2013 Michal Zidek <mzidek@redhat.com>

Use the same dbg level for all ncache hits. We used different debug levels for messages informing about negative cache hits (old levels 2,3,4). Now it is only SSSDBG_TRACE_FUNC (same level is used in nsssrv_services.c and proposed in the ticket bellow). https://fedorahosted.org/sssd/ticket/1771

275102c8f332323571d55370a705d4610d24f510 04-Mar-2013 Jakub Hrozek <jhrozek@redhat.com>

Remove unused functions

58c11aa20c7a9c4ead79f4e1241d4e13c16af0a8 14-Feb-2013 Jakub Hrozek <jhrozek@redhat.com>

Lower the DEBUG level if an entry cannot be deleted from memcache

4f118e3e6a25762f40a43e6dbefb09f44adbef32 10-Feb-2013 Simo Sorce <simo@redhat.com>

Introduce IS_SUBDOMAIN() macro Fixes https://fedorahosted.org/sssd/ticket/1766

0232747f04b650796db56fd7b487aee8a96fab03 10-Feb-2013 Simo Sorce <simo@redhat.com>

Add function get_next_domain() Use this function instead of explicitly calling domain->next This function allows to get the next primary domain or to descend into the subdomains and replaces also get_next_dom_or_subdom()

2cbb879c517f2c756a2eb3962527979bac01ddab 10-Feb-2013 Stephen Gallagher <sgallagh@redhat.com>

NSS: Add original homedir to home directory template options https://fedorahosted.org/sssd/ticket/1805

a1fb964f1d216427c8215a92a59f722f08a07426 16-Jan-2013 Jakub Hrozek <jhrozek@redhat.com>

Invalidate user entry even if there are no groups Related to https://fedorahosted.org/sssd/ticket/1757 Previously we would optimize the mc invalidate code for cases where the user was a member of some groups. But if the user was removed from the server while being in memory cache, we would only invalidate the mc record if he was a member of at least one supplementary group.

0c517cb7fe642795f8c23f0df2cef6ba81e079e8 16-Jan-2013 Jakub Hrozek <jhrozek@redhat.com>

NSS: invalidate memcache user entry on initgr, too https://fedorahosted.org/sssd/ticket/1757 When the user entry was missing completely after initgroups, we would never invalidate the user entry from cache. This led to dangling cache entried in memory cache if the user was removed from the server while still being in memory cache.

c3ca06c011a34997cd6ec5d1e5927fee12bf2464 15-Jan-2013 Simo Sorce <simo@redhat.com>

Add domain argument to sysdb_initgroups()

a0593a02a5d2c7a8b4dda330a69fb1f10cc12cdb 15-Jan-2013 Simo Sorce <simo@redhat.com>

Pass domain to sysdb_enum<pw/gr>ebt() functions

2d66c2eee2e4364a52d5436b61759ef990108230 15-Jan-2013 Simo Sorce <simo@redhat.com>

Pass domain to sysdb_get<pwu/grg><id() functions

58fd3aa25c5292bc67432647ab7e5059439fcc6d 15-Jan-2013 Simo Sorce <simo@redhat.com>

Pass domain to sysdb_get<pw/gr>nam() functions Also allows us to remove sysdb_subdom_get<pw/gr>nam() wrappers and restore fqnames proper value in subdomains, by testing for a parent domain being present or not.

528dd4ca82de4f4c2030ae22b723267ebc0d42e7 07-Jan-2013 Michal Zidek <mzidek@redhat.com>

sss_userdel and sss_groupdel with use_fully_qualified_names If use_fully_qualified_names is used, we need to pass fqdn to sss_mmap_cache_*_invalidate.

0e6c9d03cacf24de4265ee0f902c216ba5a131c9 20-Dec-2012 Simo Sorce <simo@redhat.com>

mmap cache: invalidate cache on fatal error If a fatal EFAULT error is returned by the internal function that frees used memory invalidate the whole cache and reinit it. This way we avoid further corruption and insure clients see consistent data. Also insure we use the right context in init() and we use talloc_zfree() in reinit so that if the init() later fails we do not leave around a pointer to free memory in the callers.

1f15b746e77f54ad82e1cb5c74f29d327b851c5a 19-Dec-2012 Simo Sorce <simo@redhat.com>

sssd_nss: Plug memory leaks A recent patch introduced a glaring memory leak in the routines that clean up memcache memory on initgroups calls.

e61587a5d620310c09f226f43c9bb3008481bbe3 13-Dec-2012 Michal Zidek <mzidek@redhat.com>

sssd_nss: Remove entries from memory cache if not found in sysdb Functions nss_cmd_getXXnam remove entries from memory cache if not found in sysdb cache of a local domain.

408914f68673f2caa1c82a1a21336fcb7ddd52ef 05-Dec-2012 Simo Sorce <simo@redhat.com>

Hook for mmap cache update on initgroup calls This set of functions enumerate the user's groups and invalidate them all if the list does not matches what we get from the caller.

ebba1aa6b9783daa0d530e9f5e307f7be17d3cd3 05-Dec-2012 Simo Sorce <simo@redhat.com>

Hook to perform a mmap cache update from sssd_nss This set of functions enumerate each user/group from all domains and invalidate any mmap cache record that matches.

8d9e0547a864cee05ab36bc988300c0cfa986025 19-Nov-2012 Simo Sorce <simo@redhat.com>

Refactor the way subdomain accounts are saved The original sysdb code had a strong assumption that only users from one domain are saved in the databse, with the subdomain feature, we have changed reality, but have not adjusted all the code arund the sysdb calls to not rely on the original assumption. One of the side effects of this incongrunece is that currently group memberships do not return fully qualified names for subdomain users as they should. In oreder to fix this and other potential issues surrounding the violation of the original assumption, we need to fully qualify subdomain user names. By savin them fully qualified we do not risk aliasing local users and have group memberhips or other name based matching code mistake a domain user with subdomain usr or vice versa.

59f136cd254d1acf2991c97221eb08803784777d 15-Nov-2012 Paul B. Henson <henson@acm.org>

Add ignore_group_members option. https://fedorahosted.org/sssd/ticket/1376

a489aec7d328ad4fd8f420e1ac011c1fdc247465 23-Oct-2012 Sumit Bose <sbose@redhat.com>

Fix two errors in the nss responder One is a copy-and-paste error which was introduce by 1774ee9a61b9d691dadd1a0538f32bcdcc84f72f. The second fixes a missing explicit setting of the return value. In the case where we want fully qualified names ret contains the number of characters from the last snprintf() which is almost ever not 0.

66318dfe1e7138ff3fc780c4b3f0b29c4b2d8712 18-Oct-2012 Jakub Hrozek <jhrozek@redhat.com>

Allow setting the default_shell option per-domain as well https://fedorahosted.org/sssd/ticket/1583

1774ee9a61b9d691dadd1a0538f32bcdcc84f72f 12-Oct-2012 Sumit Bose <sbose@redhat.com>

Check for subdomains if getpwuid or getgrgid are the first requests Fixes https://fedorahosted.org/sssd/ticket/1561

89b93a44d1ce24ec208ee244f7e5b1689fc6ff1a 11-Oct-2012 Pavel Březina <pbrezina@redhat.com>

nss_cmd_retpwent(): do not go into infinite loop if n < 0 https://fedorahosted.org/sssd/ticket/1551

1542b85f13d72329685bdd97aa879c36d11f81be 01-Oct-2012 Sumit Bose <sbose@redhat.com>

Add new option default_domain_suffix

695bca9d2f73096254308e0883fcc74b2631850e 20-Jul-2012 Stephen Gallagher <sgallagh@redhat.com>

NSS: Add override_shell option If override_shell is specified in the [nss] section, all users managed by SSSD will have their shell set to this value. If it is specified in the [domain/DOMAINNAME] section, it will apply to only that domain (and override the [nss] value, if any). https://fedorahosted.org/sssd/ticket/1087

065771c9859df9c4137daa5187be3aa5633b3cd5 21-Jun-2012 Jan Zeleny <jzeleny@redhat.com>

Fix re_expression matching with subdomains This patch fixes an issue which resulted in a need to initialize responder with data from local domain, otherwise it would not correctly detect requests for subdomains. Similar situation can occur if new subdomain is added at runtime. The solution is to ask for a list of subdomains in case there is a candidate domain identified in the process of matching re_expressions with given name.

3c60433641ce2e86b9b04778c8f8652ef0d097e4 13-Jun-2012 Stef Walter <stefw@gnome.org>

Make re_expression and full_name_format per domain options * Allows different user/domain qualified names for different domains. For example Domain\User or user@domain. * The global re_expression and full_name_format options remain as defaults for the domains. * Subdomains get the re_expression and full_name_format of their parent domain. https://bugzilla.redhat.com/show_bug.cgi?id=811663

0d492cf0d3bf44cac68e8606ac977da21f0628f6 31-May-2012 Jan Zeleny <jzeleny@redhat.com>

Ghost members - various small changes

9f26cae5ae716a0542261167b5a91d7d2e1763e7 31-May-2012 Jan Zeleny <jzeleny@redhat.com>

Ghost members - NSS responder changes Since there are two attributes storing information about user memberships of the group we have to include both of them in results. This will apply only for objects that have ghost members (i.e. they contain the SYSDB_GHOST attribute). If an object has this attribute, values of this attribute are not projected to the memberuid attribute.

de00277c5a865501aa9d835c8dc94c7d22dfd88d 24-May-2012 Stephen Gallagher <sgallagh@redhat.com>

NSS: Fix segfault when mmap cache cannot be initialized

70694ae643677327d58912d00681096b1ab86863 15-May-2012 Jakub Hrozek <jhrozek@redhat.com>

Use sized_string correctly in FQDN domains

de2a06183ebea42e27431d5dd94e108ac56e7436 15-May-2012 Jakub Hrozek <jhrozek@redhat.com>

NSS: keep a pointer to body after body is reallocated

85e82e6a0de8668a1d0d9b29b61e731924871527 10-May-2012 Jakub Hrozek <jhrozek@redhat.com>

Send the correct enumeration request https://fedorahosted.org/sssd/ticket/1329

312818233ce48471c56d1a7589579892d9726e3b 10-May-2012 Stephen Gallagher <sgallagh@redhat.com>

NSS: Add default_shell option This option will allow administrators to set a default shell to be used if a user does not have one set in the identity provider. https://fedorahosted.org/sssd/ticket/1289

f6dbb235373b122ae15643ef5dbbe821ee1307d9 10-May-2012 Stephen Gallagher <sgallagh@redhat.com>

NSS: Add fallback_homedir option This option is similar to override_homedir, except that it will take effect only for users that do not have an explicit home directory specified in LDAP. https://fedorahosted.org/sssd/ticket/1250

f69456de37d7a4bf9ffd527c747a3ccb14fc0635 02-May-2012 Jakub Hrozek <jhrozek@redhat.com>

NSS: fix returning group from cache

26d72997b0a97a24015b776e41a430e8c874995f 02-May-2012 Jakub Hrozek <jhrozek@redhat.com>

NSS: Check return code of sss_mmap_cache_gr_store

24ba5b87c9a2c01deddc9be867e4951e2a397146 25-Apr-2012 Jakub Hrozek <jhrozek@redhat.com>

NSS: Only return data from initgroups once Do not let nss_cmd_initgroups_search() return data itself, but let the caller return data. This is more intuitive and more consistent with the rest of the nss_cmd_*_search() functions. Also fixes a typo - nss_cmd_initgroups_cb used to call getpw_send_reply instead of initgr_send_reply.

25912ba00b14f06db32b982fd067c3fa0a09e99f 24-Apr-2012 Jakub Hrozek <jhrozek@redhat.com>

Lowercase group members in case-insensitive domains https://fedorahosted.org/sssd/ticket/1312

29be7d76c949b82350c7603cfd362a1fcb47eb1b 24-Apr-2012 Jan Zeleny <jzeleny@redhat.com>

Moved expand_homedir_template() from NSS responder to utility code

10894343a975174b7efe5a178641df71c7ef9f57 24-Apr-2012 Sumit Bose <sbose@redhat.com>

Check sub-domains in nss_cmd_get{pwuid|grgid}_search()

3d715363a3bfac489b7500dd70de6b6bdc7aa405 24-Apr-2012 Jan Zeleny <jzeleny@redhat.com>

Ask for subdomains in responder in the first request after startup

f2d943ee47bb313e0bb7276122587989a3c54fb4 24-Apr-2012 Jan Zeleny <jzeleny@redhat.com>

Retrieve subdomains if there is a request for fully qualified user

6fdde3913a11cd6148627696fa8717c34e8460fc 24-Apr-2012 Jan Zeleny <jzeleny@redhat.com>

Modified responder_get_domain() Now it checks for subdomains as well as for the domain itself

bd09ead65cded3207cf228c44a31bbc87c2979bd 18-Apr-2012 Jakub Hrozek <jhrozek@redhat.com>

Prevent printing NULL from DEBUG messages

c3ef027218fe9a7d16a70ca9d2f53e3d995e369f 19-Mar-2012 Simo Sorce <simo@redhat.com>

nsssrv: add handling of memory cache group map

6cb1a6e7c7517ab4ccb8ad37ade86f95b5c16a01 19-Mar-2012 Simo Sorce <simo@redhat.com>

nsssrv: add handling of memory cache passwd map

b7b50b21d2254a079b1b1c299909483d23db1512 29-Feb-2012 Sumit Bose <sbose@redhat.com>

Remove sysdb_get_ctx_from_list()

d504e6bfe8a88ea41a72b0f379e21368f7cf4cdd 13-Feb-2012 Stephen Gallagher <sgallagh@redhat.com>

Avoid uninitialized value comparison Coverity #12526

129310e872a0a70e721ba59363e518176ef406d6 13-Feb-2012 Jakub Hrozek <jhrozek@redhat.com>

Allocate setent structure on state, not on the client context https://fedorahosted.org/sssd/ticket/1189

2cba1c86f48db866fc72738a32eecbbdcdf3dbdb 13-Feb-2012 Jakub Hrozek <jhrozek@redhat.com>

Remove setent structure when callback is called

08207cb57473192c99893938fd60dc6a6ff90eb0 10-Feb-2012 Jakub Hrozek <jhrozek@redhat.com>

Fix group enumeration Also adds some more debugging and fixes a code style issue. https://fedorahosted.org/sssd/ticket/1182

e24a0656252c167e644b4758e5e53afe69be02e1 06-Feb-2012 Jakub Hrozek <jhrozek@redhat.com>

Split the logic to check cache expiration into separate function

98076cabc2a8b8f71dc3bc1263519827f71a5fcc 06-Feb-2012 Jakub Hrozek <jhrozek@redhat.com>

RESPONDERS: Refactor setent_req_list Makes the setent_add_ref() and setent_notify_*() functions more generic to be reusable by the autofs responder.

405a06682b3772b70bb06d3adba780a062959641 03-Feb-2012 Jakub Hrozek <jhrozek@redhat.com>

RESPONDERS: Provide a common sss_cmd_send_error function The common function could be reused in new responders

ab68008f87504ace9451c14ba2a7e8dfec435779 01-Feb-2012 Jakub Hrozek <jhrozek@redhat.com>

Refactor nss_cmd_send_empty

8c3a4809b3420657289b42f028a1c9019b112991 27-Jan-2012 Stephen Gallagher <sgallagh@redhat.com>

NSS: Add getservbyname and getservbyport support to the NSS Responder

01171ddb20034578c616d0ba07f0268ab71809da 23-Jan-2012 Stephen Gallagher <sgallagh@redhat.com>

Move sized_string declaration to utils

9d1d6019a27a0ed70a665700a9f6acc55f874811 23-Jan-2012 Stephen Gallagher <sgallagh@redhat.com>

DP: Fix bugs in sss_dp_get_account_int The conversion to the tevent_req style introduced numerous bugs related to memory management of the various client requests. In some circumstances, this could cause memory corruption and segmentation faults in the NSS responder. This patch makes the following changes: 1) Rename the internal lookup from subreq to sidereq, to indicate that it is not a sub-request of the current lookup (and therefore is not cancelled if the current request is). 2) Change the handling of the callback loops since they call tevent_req_[done|error], which results in them being freed (and therefore removed from the cb_list. This was the source of the memory corruption that would occasionally result in dereferencing an unreadable request. 3) Remove the unnecessary sss_dp_get_account_int_recv() function and change sss_dp_get_account_done() so that it only frees the sidereq. All of the waiting processes have already been signaled with the final results from sss_dp_get_account_int_done()

0c7aa697991ea9df960fae14fd567ebdda3b4ff4 21-Jan-2012 Stephen Gallagher <sgallagh@redhat.com>

RESPONDER: Extend sss_dp_account_send() to include extra data Some NSS maps such as 'services' require more values to be passed to the data provider than just the name or ID. In these cases, we will amend an optional component to filter value to pass to the data provider backend.

a096f75242bb612b7a1ae126c8e960934dc85fd4 09-Jan-2012 Simo Sorce <simo@redhat.com>

nsssrv: use sized_string in fill_grent

056a1ab1cc926e8d09d50b11e5f681c9b367e8e7 09-Jan-2012 Simo Sorce <simo@redhat.com>

nsssrv: use sized_string in fill_pwent

162858f67e8d47a9dd49d04a9f317a0315c44b0e 09-Jan-2012 Simo Sorce <simo@redhat.com>

nsssrv: add string manipulation helper the sized_string structure makes it easier to keep track of string lengths and makes passing around data more compat and readable.

65b813f8bb176d5db33cb486e1cc1bcd6dd8f1cc 21-Dec-2011 Jakub Hrozek <jhrozek@redhat.com>

Return user and group names lowercased in case insensitive domains

c7d387aaaa3d3470dec55a5ca0612873e6354ba8 21-Dec-2011 Jakub Hrozek <jhrozek@redhat.com>

sss_get_cased_name utility function

1c9d778a0410cdbf516eed7d61acf214ce92067a 19-Dec-2011 Jakub Hrozek <jhrozek@redhat.com>

Pass client context to sss_dp_get_account_send

b3b42c49656e192787a983aaa8b9ec744ba4cb9d 16-Dec-2011 Jakub Hrozek <jhrozek@redhat.com>

Use the case sensitivity flag in responders

247a7056af42fc50bbc896cddb66a60154ca12e9 16-Dec-2011 Jakub Hrozek <jhrozek@redhat.com>

Responders: Split getting domain by name into separate function

b1cf223317bb44da162bcfb153064281cdcbb56b 07-Dec-2011 Jakub Hrozek <jhrozek@redhat.com>

Pass the correct private data into Data Provider callback

d22a6b9feb74bd630ab25dd6c32da6ae88b4fc33 05-Dec-2011 Stephen Gallagher <sgallagh@redhat.com>

Ignore NULL-terminator when checking UTF8-validity Glib fails if the NULL-terminator is included when a length is specified.

069a5fe72d38f8e15b4416992453ac41a425ce9a 29-Nov-2011 Stephen Gallagher <sgallagh@redhat.com>

RESPONDER: Refactor DP requests into tevent_req style

872f2d32d979a1dd2145667487f170fec8b5189a 18-Nov-2011 Stephen Gallagher <sgallagh@redhat.com>

RESPONDER: Ensure that all input strings are valid UTF-8

8a1738f9379a1b8fb5c95c3df649e014ff5a1434 15-Aug-2011 Jan Zeleny <jzeleny@redhat.com>

sysdb refactoring: deleted domain variables in sysdb API The patch also updates code using modified functions. Tests have also been adjusted.

/sssd/src/db/sysdb.c /sssd/src/db/sysdb.h /sssd/src/db/sysdb_ops.c /sssd/src/db/sysdb_search.c /sssd/src/providers/ipa/ipa_access.c /sssd/src/providers/ipa/ipa_auth.c /sssd/src/providers/ipa/ipa_hbac_common.c /sssd/src/providers/ipa/ipa_hbac_hosts.c /sssd/src/providers/ipa/ipa_hbac_services.c /sssd/src/providers/ipa/ipa_hbac_users.c /sssd/src/providers/krb5/krb5_access.c /sssd/src/providers/krb5/krb5_auth.c /sssd/src/providers/krb5/krb5_renew_tgt.c /sssd/src/providers/ldap/ldap_auth.c /sssd/src/providers/ldap/ldap_common.c /sssd/src/providers/ldap/ldap_id.c /sssd/src/providers/ldap/ldap_id_cleanup.c /sssd/src/providers/ldap/ldap_id_enum.c /sssd/src/providers/ldap/ldap_id_netgroup.c /sssd/src/providers/ldap/sdap_access.c /sssd/src/providers/ldap/sdap_async_accounts.c /sssd/src/providers/ldap/sdap_async_netgroups.c /sssd/src/providers/proxy/proxy_auth.c /sssd/src/providers/proxy/proxy_id.c /sssd/src/providers/proxy/proxy_netgroup.c /sssd/src/providers/simple/simple_access.c /sssd/src/python/pysss.c nsssrv_cmd.c nsssrv_netgroup.c /sssd/src/responder/pam/pam_LOCAL_domain.c /sssd/src/responder/pam/pamsrv_cmd.c /sssd/src/tests/sysdb-tests.c /sssd/src/tools/sss_cache.c /sssd/src/tools/sss_groupdel.c /sssd/src/tools/sss_groupmod.c /sssd/src/tools/sss_groupshow.c /sssd/src/tools/sss_sync_ops.c /sssd/src/tools/sss_sync_ops.h /sssd/src/tools/sss_useradd.c /sssd/src/tools/sss_userdel.c /sssd/src/tools/sss_usermod.c /sssd/src/tools/tools_util.c
b03a48297a3dc03ea59360345f352bc449189589 08-Aug-2011 Jakub Hrozek <jhrozek@redhat.com>

Prevent segfault if vetoed_shells are specified without allowed_shells https://fedorahosted.org/sssd/ticket/954

1dc99c9d468cfe2a7f7286a8969c586f8740bb9f 29-Jul-2011 John Hodrien <J.H.Hodrien@leeds.ac.uk>

Add vetoed_shells option There may be users in LDAP that have a valid but unwelcome shell set in their account. This adds a blacklist of shells that should always be replaced by the fallback_shell. Signed-off-by: Stephen Gallagher <sgallagh@redhat.com>

6149a5a9d2399c2c68f5fb07a110333d7634311a 21-Jul-2011 Jakub Hrozek <jhrozek@redhat.com>

Fix indexing of skipped groups https://fedorahosted.org/sssd/ticket/928

ec425320a9bf42954a5a28b79cb567e3a9a58ecc 27-Jun-2011 Simo Sorce <ssorce@redhat.com>

fix typos

00142aba00a2adcf32f0741b8ea8a31c5a461675 02-Jun-2011 Jan Zeleny <jzeleny@redhat.com>

Non-posix group processing - ldap provider and nss responder

09985e0fcdff6312cce4f731abd12c6903ede7f1 31-May-2011 Stephen Gallagher <sgallagh@redhat.com>

Fix typo in initgroups negative cache check

068dbee9ca7bf5b37330eff91c94ae10f288d09f 20-May-2011 Jakub Hrozek <jhrozek@redhat.com>

Add new options to override shell value https://fedorahosted.org/sssd/ticket/742

d9d716b547d256c03df97b0ff8282349a0f365ad 20-May-2011 Jakub Hrozek <jhrozek@redhat.com>

Add a new option to override home directory value https://fedorahosted.org/sssd/ticket/551

54af51d2129d29258108a6dbf072a82c930bf399 20-May-2011 Jakub Hrozek <jhrozek@redhat.com>

Add a new option to override primary GID number https://fedorahosted.org/sssd/ticket/742

d9aadca8dd6676c8af03c3fbed06b7e89b4f97b1 15-Apr-2011 Stephen Gallagher <sgallagh@redhat.com>

Fix regression where nonexistent entries were never added to the negative cache

f858925bda6c5dbbe178b9abb6e85d8ce53c195f 15-Apr-2011 Stephen Gallagher <sgallagh@redhat.com>

Fix a regression with the negative cache in multi-domain configurations

c5f66b8c471e472b3c6eecf87c93373ecf8d0890 06-Jan-2011 Sumit Bose <sbose@redhat.com>

Remove unused enumeration cache timeout checks The existence of the getent_ctx is used to track the enumeration cache timeout.

5ea3cfbb8272f5e02f8e9683c0028b3e1a3c9045 06-Jan-2011 Sumit Bose <sbose@redhat.com>

Post enumeration tevent request if needed

138aea921316c32d18820c782e923b87d826c849 06-Jan-2011 Sumit Bose <sbose@redhat.com>

Return groups and users from all domains during enumeration

487c19b3871cebbdb703bb337d15abd31ec206db 26-Oct-2010 Sumit Bose <sbose@redhat.com>

Always use talloc_zero() to allocate cmdctx

c1d525a90f06a9414d0788857b271b80625a5858 15-Oct-2010 Jakub Hrozek <jhrozek@redhat.com>

sysdb interface for adding fake users

7e15d2ed3c01ab3c1f5f882fe8fa974058097bc6 15-Oct-2010 Jakub Hrozek <jhrozek@redhat.com>

sysdb interface for adding incomplete groups Useful for optimizing the initgroups operation.

ef39c0adcb61b16f9edc7beb4cdc8f3b0d5a8f15 13-Oct-2010 Stephen Gallagher <sgallagh@redhat.com>

Add netgroup support to the NSS responder

88a9c6a44b474bff0f7e22f9eb28a9e55df2c0b5 13-Oct-2010 Stephen Gallagher <sgallagh@redhat.com>

Split out some helper functions for the NSS responder Create a new private header and make some functions available for other object files.

585fc61d6b972939fdee815cea7463007b9ff9fe 13-Oct-2010 Stephen Gallagher <sgallagh@redhat.com>

Require explicit setting of callback context for check_cache Previously, it was implicitly using the nss_dom_ctx, but there are situations where we would want to send a different private context

1286160a84dadf7d74f0541648717b101d68460a 22-Sep-2010 Stephen Gallagher <sgallagh@redhat.com>

Initgroups on a non-cached user should go to the data provider 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.

c53ed27b33ecc7fcce62d4b3a3e55ce9cda1ca7c 08-Sep-2010 Stephen Gallagher <sgallagh@redhat.com>

Handle multiple simultaneous enumeration requests 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.

e35fa36e5c005986978cc7463f54dc29d3eacd66 08-Sep-2010 Jan Zeleny <jzeleny@redhat.com>

Dead assignments cleanup in NSS responder Various dead assignments were deleted, some return value inspections were added. Ticket: #588

ae5716d87c7b126ab01b0d4fcacd4f519585e5fb 17-Jun-2010 Stephen Gallagher <sgallagh@redhat.com>

Refactor the negative cache Rename functions from nss_ncache_* to sss_ncache_* Move negative cache to responder/common and rename as negcache.c/h

de3f8b862f4920c2804529698db86f3057fd3c8a 17-Jun-2010 Stephen Gallagher <sgallagh@redhat.com>

Ensure that all domains are checked for users/groups There was a bug in the negative cache checks (probably a leftover from when filter_users was global-only) that meant that if a user was filtered out of a domain, the remaining domains would not be checked for that user. (Same for groups/initgroups)

aafa0393524bacc5ba48e79ab536f9deb3972e38 12-Apr-2010 Simo Sorce <ssorce@redhat.com>

sysdb: convert sysdb_initgroups

b2d78dfb2cdd6391be62812513ed26d6f4f454c5 12-Apr-2010 Simo Sorce <ssorce@redhat.com>

Adjust fill_pwent and fill_grent fill_pwent should return the number of users actually processed. Otherwise in case of a recoverable error we may end up skipping a large chunk of users. fill_grent doesn't need to distinguish between number of entries and number of groups to process since we started adding memberuid. Remove remnants that are not useful anymore.

88e7576d8bf00bfd0eaed8731b7eee1d6b6e05a1 12-Apr-2010 Simo Sorce <ssorce@redhat.com>

sysdb: convert sysdb_enumgrent

fa362558a3f89644dab60debfbc423fe31a39f00 12-Apr-2010 Simo Sorce <ssorce@redhat.com>

sysdb: convert sysdb_enumpwent

ac660a221255b761615f6ecdb63b92a6391a58a2 12-Apr-2010 Simo Sorce <ssorce@redhat.com>

sysdb: convert sysdb_getgrgid

25465215742b9c78566d44cd06a886c4a4e43ffa 12-Apr-2010 Simo Sorce <ssorce@redhat.com>

sysdb: convert sysdb_getgrnam

a298e5b4050a69238593017ccc774336eb332e16 12-Apr-2010 Simo Sorce <ssorce@redhat.com>

sysdb: convert sysdb_getpwuid

7ffaa2afb9e03a6f0b9c602c0f03b2074ea33eac 12-Apr-2010 Simo Sorce <ssorce@redhat.com>

sysdb: convert sysdb_getpwnam

8ad7891f28c0ffd991c51f2d64c32cf04c9ddbbc 08-Mar-2010 George McCollister <georgem@novatech-llc.com>

Fixed alignment problems in nss client/server I fixed a handful of alignment problems in sss_client and nss responder. Enumerating group and passwd with getgrent and getpwent now works correctly on ARM. Signed-off-by: George McCollister <georgem@novatech-llc.com>

8f4aaae28c88c707853f8f28d8babc4efe0c1bf6 04-Mar-2010 Martin Nagy <mnagy@redhat.com>

Add forgotten \n in DEBUG statements Logs from confdb with missing '\n' in the DEBUG statements annoyed me so I decided to fix them. I also made a quick grep through the code and found other places so I fixed them too.

1c48b5a62f73234ed26bb20f0ab345ab61cda0ab 18-Feb-2010 Stephen Gallagher <sgallagh@redhat.com>

Rename server/ directory to src/ Also update BUILD.txt

/sssd/BUILD.txt /sssd/Makefile.am /sssd/configure.ac /sssd/contrib/sssd.spec.in /sssd/src/Makefile.am /sssd/src/build_macros.m4 /sssd/src/conf_macros.m4 /sssd/src/confdb/confdb.c /sssd/src/confdb/confdb.h /sssd/src/confdb/confdb_private.h /sssd/src/confdb/confdb_setup.c /sssd/src/confdb/confdb_setup.h /sssd/src/config/SSSDConfig.py /sssd/src/config/SSSDConfigTest.py /sssd/src/config/etc/sssd.api.conf /sssd/src/config/etc/sssd.api.d/sssd-ipa.conf /sssd/src/config/etc/sssd.api.d/sssd-krb5.conf /sssd/src/config/etc/sssd.api.d/sssd-ldap.conf /sssd/src/config/etc/sssd.api.d/sssd-local.conf /sssd/src/config/etc/sssd.api.d/sssd-proxy.conf /sssd/src/config/ipachangeconf.py /sssd/src/config/setup.py /sssd/src/config/testconfigs/noparse.api.conf /sssd/src/config/testconfigs/sssd-badversion.conf /sssd/src/config/testconfigs/sssd-invalid-badbool.conf /sssd/src/config/testconfigs/sssd-invalid.conf /sssd/src/config/testconfigs/sssd-noversion.conf /sssd/src/config/testconfigs/sssd-valid.conf /sssd/src/config/upgrade_config.py /sssd/src/configure.ac /sssd/src/db/sysdb.c /sssd/src/db/sysdb.h /sssd/src/db/sysdb_ops.c /sssd/src/db/sysdb_private.h /sssd/src/db/sysdb_search.c /sssd/src/doxy.config.in /sssd/src/examples/sssd.conf /sssd/src/examples/sssdproxytest /sssd/src/examples/sudo /sssd/src/external/crypto.m4 /sssd/src/external/docbook.m4 /sssd/src/external/krb5.m4 /sssd/src/external/ldap.m4 /sssd/src/external/libcares.m4 /sssd/src/external/libcollection.m4 /sssd/src/external/libdhash.m4 /sssd/src/external/libini_config.m4 /sssd/src/external/libldb.m4 /sssd/src/external/libpcre.m4 /sssd/src/external/libpopt.m4 /sssd/src/external/libtalloc.m4 /sssd/src/external/libtdb.m4 /sssd/src/external/libtevent.m4 /sssd/src/external/pam.m4 /sssd/src/external/pkg.m4 /sssd/src/external/platform.m4 /sssd/src/external/python.m4 /sssd/src/external/selinux.m4 /sssd/src/external/sizes.m4 /sssd/src/krb5_plugin/sssd_krb5_locator_plugin.c /sssd/src/ldb_modules/memberof.c /sssd/src/m4/.dir /sssd/src/man/include/failover.xml /sssd/src/man/include/param_help.xml /sssd/src/man/include/upstream.xml /sssd/src/man/sss_groupadd.8.xml /sssd/src/man/sss_groupdel.8.xml /sssd/src/man/sss_groupmod.8.xml /sssd/src/man/sss_groupshow.8.xml /sssd/src/man/sss_useradd.8.xml /sssd/src/man/sss_userdel.8.xml /sssd/src/man/sss_usermod.8.xml /sssd/src/man/sssd-ipa.5.xml /sssd/src/man/sssd-krb5.5.xml /sssd/src/man/sssd-ldap.5.xml /sssd/src/man/sssd.8.xml /sssd/src/man/sssd.conf.5.xml /sssd/src/man/sssd_krb5_locator_plugin.8.xml /sssd/src/monitor/monitor.c /sssd/src/monitor/monitor.h /sssd/src/monitor/monitor_interfaces.h /sssd/src/monitor/monitor_sbus.c /sssd/src/po/LINGUAS /sssd/src/po/Makevars /sssd/src/po/POTFILES.in /sssd/src/po/de.po /sssd/src/po/es.po /sssd/src/po/fr.po /sssd/src/po/it.po /sssd/src/po/ja.po /sssd/src/po/nl.po /sssd/src/po/pl.po /sssd/src/po/pt.po /sssd/src/po/sss_daemon.pot /sssd/src/po/sv.po /sssd/src/providers/child_common.c /sssd/src/providers/child_common.h /sssd/src/providers/data_provider.h /sssd/src/providers/data_provider_be.c /sssd/src/providers/data_provider_fo.c /sssd/src/providers/data_provider_opts.c /sssd/src/providers/dp_auth_util.c /sssd/src/providers/dp_backend.h /sssd/src/providers/dp_sbus.c /sssd/src/providers/fail_over.c /sssd/src/providers/fail_over.h /sssd/src/providers/ipa/ipa_access.c /sssd/src/providers/ipa/ipa_access.h /sssd/src/providers/ipa/ipa_auth.c /sssd/src/providers/ipa/ipa_auth.h /sssd/src/providers/ipa/ipa_common.c /sssd/src/providers/ipa/ipa_common.h /sssd/src/providers/ipa/ipa_init.c /sssd/src/providers/ipa/ipa_timerules.c /sssd/src/providers/ipa/ipa_timerules.h /sssd/src/providers/krb5/krb5_auth.c /sssd/src/providers/krb5/krb5_auth.h /sssd/src/providers/krb5/krb5_become_user.c /sssd/src/providers/krb5/krb5_child.c /sssd/src/providers/krb5/krb5_common.c /sssd/src/providers/krb5/krb5_common.h /sssd/src/providers/krb5/krb5_init.c /sssd/src/providers/krb5/krb5_utils.c /sssd/src/providers/krb5/krb5_utils.h /sssd/src/providers/ldap/ldap_auth.c /sssd/src/providers/ldap/ldap_child.c /sssd/src/providers/ldap/ldap_common.c /sssd/src/providers/ldap/ldap_common.h /sssd/src/providers/ldap/ldap_id.c /sssd/src/providers/ldap/ldap_id_cleanup.c /sssd/src/providers/ldap/ldap_id_enum.c /sssd/src/providers/ldap/ldap_init.c /sssd/src/providers/ldap/sdap.c /sssd/src/providers/ldap/sdap.h /sssd/src/providers/ldap/sdap_async.c /sssd/src/providers/ldap/sdap_async.h /sssd/src/providers/ldap/sdap_async_accounts.c /sssd/src/providers/ldap/sdap_async_connection.c /sssd/src/providers/ldap/sdap_async_private.h /sssd/src/providers/ldap/sdap_child_helpers.c /sssd/src/providers/providers.h /sssd/src/providers/proxy.c /sssd/src/providers/sssd_be.exports /sssd/src/python/pysss.c /sssd/src/resolv/ares/ares_data.c /sssd/src/resolv/ares/ares_data.h /sssd/src/resolv/ares/ares_dns.h /sssd/src/resolv/ares/ares_parse_srv_reply.c /sssd/src/resolv/ares/ares_parse_srv_reply.h /sssd/src/resolv/ares/ares_parse_txt_reply.c /sssd/src/resolv/ares/ares_parse_txt_reply.h /sssd/src/resolv/async_resolv.c /sssd/src/resolv/async_resolv.h /sssd/src/responder/common/responder.h /sssd/src/responder/common/responder_cmd.c /sssd/src/responder/common/responder_common.c /sssd/src/responder/common/responder_dp.c /sssd/src/responder/common/responder_packet.c /sssd/src/responder/common/responder_packet.h nsssrv.c nsssrv.h nsssrv_cmd.c nsssrv_nc.c nsssrv_nc.h /sssd/src/responder/pam/pam_LOCAL_domain.c /sssd/src/responder/pam/pamsrv.c /sssd/src/responder/pam/pamsrv.h /sssd/src/responder/pam/pamsrv_cmd.c /sssd/src/responder/pam/pamsrv_dp.c /sssd/src/sbus/sbus_client.c /sssd/src/sbus/sbus_client.h /sssd/src/sbus/sssd_dbus.h /sssd/src/sbus/sssd_dbus_common.c /sssd/src/sbus/sssd_dbus_connection.c /sssd/src/sbus/sssd_dbus_private.h /sssd/src/sbus/sssd_dbus_server.c /sssd/src/sss_client/common.c /sssd/src/sss_client/group.c /sssd/src/sss_client/man/pam_sss.8.xml /sssd/src/sss_client/pam_sss.c /sssd/src/sss_client/pam_test_client.c /sssd/src/sss_client/passwd.c /sssd/src/sss_client/protos.h /sssd/src/sss_client/sss_cli.h /sssd/src/sss_client/sss_nss.exports /sssd/src/sss_client/sss_pam.exports /sssd/src/sss_client/sss_pam_macros.h /sssd/src/sysv/SUSE/sssd /sssd/src/sysv/sssd /sssd/src/tests/auth-tests.c /sssd/src/tests/check_and_open-tests.c /sssd/src/tests/common.c /sssd/src/tests/common.h /sssd/src/tests/fail_over-tests.c /sssd/src/tests/files-tests.c /sssd/src/tests/find_uid-tests.c /sssd/src/tests/ipa_ldap_opt-tests.c /sssd/src/tests/ipa_timerules-tests.c /sssd/src/tests/krb5_utils-tests.c /sssd/src/tests/python-test.py /sssd/src/tests/refcount-tests.c /sssd/src/tests/resolv-tests.c /sssd/src/tests/stress-tests.c /sssd/src/tests/strtonum-tests.c /sssd/src/tests/sysdb-tests.c /sssd/src/tools/files.c /sssd/src/tools/sss_groupadd.c /sssd/src/tools/sss_groupdel.c /sssd/src/tools/sss_groupmod.c /sssd/src/tools/sss_groupshow.c /sssd/src/tools/sss_sync_ops.c /sssd/src/tools/sss_sync_ops.h /sssd/src/tools/sss_useradd.c /sssd/src/tools/sss_userdel.c /sssd/src/tools/sss_usermod.c /sssd/src/tools/tools_util.c /sssd/src/tools/tools_util.h /sssd/src/util/backup_file.c /sssd/src/util/check_and_open.c /sssd/src/util/crypto_sha512crypt.c /sssd/src/util/debug.c /sssd/src/util/dlinklist.h /sssd/src/util/find_uid.c /sssd/src/util/find_uid.h /sssd/src/util/memory.c /sssd/src/util/nss_sha512crypt.c /sssd/src/util/refcount.c /sssd/src/util/refcount.h /sssd/src/util/server.c /sssd/src/util/sha512crypt.h /sssd/src/util/signal.c /sssd/src/util/signal.m4 /sssd/src/util/sss_krb5.c /sssd/src/util/sss_krb5.h /sssd/src/util/sss_ldap.c /sssd/src/util/sss_ldap.h /sssd/src/util/strtonum.c /sssd/src/util/strtonum.h /sssd/src/util/user_info_msg.c /sssd/src/util/user_info_msg.h /sssd/src/util/usertools.c /sssd/src/util/util.c /sssd/src/util/util.h