summaryrefslogtreecommitdiff
path: root/src/sss_client/common.c
AgeCommit message (Collapse)AuthorFilesLines
2012-10-12PAM: fix handling the client fd in pam destructorJakub Hrozek1-5/+12
* Protect the fd with a mutex when closing * Set it to a safe value after closing
2012-10-11PAM: close socket fd with pam_set_dataJakub Hrozek1-0/+6
https://fedorahosted.org/sssd/ticket/1569
2012-10-10do not fail if POLLHUP occurs while reading dataPavel Březina1-1/+9
This cause troubles when we send data to a pipe and close the file descriptor before data is read. The pipe is still readable, but POLLHUP is detected and we fail to read them. For example, this may cause a user beeing unable to log in. Now if POLLHUP appears, we read the pipe and then close it on the client side too.
2012-08-27Use PTHREAD_MUTEX_ROBUST to avoid deadlock in the clientJakub Hrozek1-6/+90
https://fedorahosted.org/sssd/ticket/1460
2012-07-18Fix uninitialized valuesNick Guay1-1/+1
https://fedorahosted.org/sssd/ticket/1379
2012-06-21PAC client: add basic support in common client codeSumit Bose1-0/+33
2012-06-18Do not send SIGPIPE on disconnectionShantanu Goel1-6/+21
Note we set MSG_NOSIGNAL to avoid having to fiddle with signal masks but also do not want to die in case SIGPIPE gets raised and the application does not handle it.
2012-06-18Set return errno to the value prior to calling close().Shantanu Goel1-2/+2
2012-02-07SSH: Common client codeJan Cholasta1-0/+19
2012-02-05AUTOFS: a client libraryJakub Hrozek1-0/+20
This is the library the autofs client is using. automounter dlopen()s the library so there is no header file, no pkgconfig file and the library is in the libsss_autofs package, not in -devel. The library provides the following interface: * _sss_setautomntent() - select the map for processing * _sss_getautomntent_r() - iterates through key/value pairs in the selected map. The key is usually the mount point, the value is mount information (server:/export) * _sss_getautomntbyname_r() - returns value for a specific key. * _sss_endautomntent() deselect a map, clean up
2012-01-18NSS: Add sss_readrep_copy_stringStephen Gallagher1-0/+30
There were many places in the client code where we were duplicating a loop to copy data in from the response buffer. This patch turns those loops into a function for easier maintenance and easier-to-read *readrep() routines.
2011-12-16SUDO integration - client common interfacePavel Březina1-0/+18
2011-08-08Fixed implicit declaration of function 'time' in src/sss_client/common.c.Pavel Březina1-0/+1
2011-07-29sss_client: avoid leaking file descriptorsSimo Sorce1-0/+3
If a pam or nss module is dlcolse()d and unloaded we were leaking the file descriptor used to communicate to sssd in the process. Make sure the fucntion used to close the socket file descriptor is called on dlclose() Silence autoconf 2.28 warnings (Patch by Jakub Hrozek)
2011-05-23Set _GNU_SOURCE globallySumit Bose1-3/+1
2011-05-03clients: use poll instead of selectSimo Sorce1-9/+6
select is limited to fd numbers up to 1024, we need to use poll() here to avoid causing memory corruption in the calling process. Fixes: https://fedorahosted.org/sssd/ticket/861
2011-02-11Use neutral name for functions used by both pam and nssSimo Sorce1-48/+62
2011-02-08Check that the socket is really ours before attempting to close it.Simo Sorce1-13/+42
Fixes: https://fedorahosted.org/sssd/ticket/790
2010-12-15Fix another possible memory leak in sss_nss_recv_rep()Sumit Bose1-8/+19
https://fedorahosted.org/sssd/ticket/723
2010-12-14Fix possible memory leak in sss_nss_recv_rep()Sumit Bose1-8/+13
https://fedorahosted.org/sssd/ticket/723
2010-11-22sss_client: make code thread-safeSimo Sorce1-8/+60
Add mutexes around nss operations and serialize them. This is necessary because nss operations may have global state. For pam it is sufficient to protect socket operations instead. As pam functions use only the provided pam handler. Fixes: https://fedorahosted.org/sssd/ticket/640
2010-11-15Fix incorrect type comparisonStephen Gallagher1-1/+1
https://fedorahosted.org/sssd/ticket/657
2010-10-13Add utility function sss_strnlen()Stephen Gallagher1-0/+29
This is useful for guaranteeing the size of an input buffer.
2010-07-23Allow sssd clients to reconnectSumit Bose1-4/+3
Currently the PAM and NSS client just return an error if there are problems on an open socket. This will lead to problems in long running programs like gdm if sssd is restarted, e.g. during an update. With this patch the socket is closed and reopened.
2010-06-10Properly handle read() and write() throughout the SSSDStephen Gallagher1-0/+16
We need to guarantee at all times that reads and writes complete successfully. This means that they must be checked for returning EINTR and EAGAIN, and all writes must be wrapped in a loop to ensure that they do not truncate their output.
2010-04-16Use SO_PEERCRED on the PAM socketSumit Bose1-1/+80
This is the second attempt to let the PAM client and the PAM responder exchange their credentials, i.e. uid, gid and pid. Because this approach does not require any message interchange between the client and the server the protocol version number is not changed. On the client side the connection is terminated it the responder is not run by root. On the server side the effective uid and gid and the pid of the client are available for future use. The following additional changes are made by this patch: - the checks of the ownership and the permissions on the PAM sockets are enhanced - internal error codes are introduced on the client side to generate more specific log messages if an error occurs
2010-04-16Revert "Add better checks on PAM socket"Sumit Bose1-122/+4
This reverts commit 5a88e963744e5da453e88b5c36499f04712df097.
2010-03-15Fixed buffer alignment in exchange_credentials().George McCollister1-5/+9
buf needs to be 32 bit aligned on ARM. Also made the fix on the server side. Signed-off-by: George McCollister <George.McCollister@gmail.com>
2010-03-11Add better checks on PAM socketSumit Bose1-4/+118
- check if the public socket belongs to root and has 0666 permissions - use a SCM_CREDENTIALS message if available
2010-02-18Rename server/ directory to src/Stephen Gallagher1-0/+669
Also update BUILD.txt