summaryrefslogtreecommitdiffstats
path: root/proxy/src/mechglue/gss_plugin.c
Commit message (Collapse)AuthorAgeFilesLines
* Fix formatting on noncompliant copyright linesRobbie Harwood2015-09-041-24/+1
| | | | | Signed-off-by: Robbie Harwood <rharwood@redhat.com> Reviewed-by: Simo Sorce <simo@redhat.com>
* Use secure_getenv in client and mechglue moduleSimo Sorce2013-11-211-2/+2
| | | | | | | | | | proxymehc.so may be used in setuid binaries so follow best security practices and use secure_getenv() if available. Fallback to poorman emulation when secure_getenv() is not available. Resolves: https://fedorahosted.org/gss-proxy/ticket/110 Reviewed-by: Günther Deschner <gdeschner@redhat.com>
* Add way to return regular oid from specialSimo Sorce2013-11-191-13/+42
| | | | | | | | | | In some cases we need to pass on the corresponding real oid, after we are given a special oid. Add helper functions to do that. https://fedorahosted.org/gss-proxy/ticket/107 Reviewed-by: Günther Deschner <gdeschner@redhat.com>
* Add --with-gpp-default-behavior configure switch.Günther Deschner2013-05-151-4/+5
| | | | | | | | Only LOCAL_ONLY,LOCAL_FIRST and REMOTE_FIRST allowed. REMOTE_ONLY is recognized but configure aborts as long as it is not supported. Signed-off-by: Günther Deschner <gdeschner@redhat.com> Reviewed-by: Simo Sorce <simo@redhat.com>
* Use gp_boolean_is_true from interposer plugin's GSS_USE_PROXY check.Günther Deschner2013-04-261-1/+2
| | | | | Signed-off-by: Günther Deschner <gdeschner@redhat.com> Reviewed-by: Simo Sorce <simo@redhat.com>
* Add helper function to check for krb5 oidSimo Sorce2013-03-271-0/+14
| | | | | | | | | | The krb5 mechanism supports multiple oids for historical reasons. Add a function to generically check if a mech oid is any of the krb5 mechanism known oids for functions that do not care which exact oid is being used of the krb5 family. Signed-off-by: Simo Sorce <simo@redhat.com> Reviewed-by: Günther Deschner <gdeschner@redhat.com>
* Use token wrapper in gpp_remote_lo_local_ctxSimo Sorce2013-03-221-4/+39
| | | | | We need to do the wrapping in order to get back an actual local context. Otherwise we get back an interposed context from gssapi.
* Create helper function to wrap tokenSimo Sorce2013-03-221-0/+29
| | | | Wrap the token in a helper function so that the code can be reused elsewhere.
* Change interposer usage, clients need to set GSS_USE_PROXY=1|YES.Günther Deschner2013-01-151-2/+5
| | | | | | The variable _GSSPROXY_LOOPS has been changed in favor of GSS_USE_PROXY. From now on, applications needs to explicitly enable the usage of the gssproxy interposer inception.
* Implement internal_release_oidSimo Sorce2012-10-251-0/+26
|
* Add name handle wrapperSimo Sorce2012-10-251-0/+62
|
* Add function to ease copying oidsSimo Sorce2012-10-251-0/+24
|
* Add function to convert remote context to localSimo Sorce2012-10-251-0/+16
|
* Add simple functions to map errorsSimo Sorce2012-10-251-0/+24
| | | | | | | | | | The mechglue stores a map of errors/mech oids, this means that we should never return the same error we got from a mechanism after re-entering the mechglue as we then may get the mechglue confused and prevent us from asking an interposed mech for the error. Also we want to try to aqvoid collisions from errors returned from the proxy, as they could end up fetching errors from the wrong mechanism. For now just make a very simple mapping by always adding a special error base.
* Add function to return a special mechSimo Sorce2012-10-251-0/+200
| | | | | | | | When the interposer wants to call the mechglue and have it call a real mechanism it does so by providing a speecial mechanism oid. This is an oid composed of the procy plugin oid and the real mechanism oid that the mechglue transforms back into a real OID before selecting the appropriate mechanism.
* Add mechanism to select behavior based on envvarSimo Sorce2012-10-251-0/+29
|
* Add loop avoidance in proxy daemon and gssapi pluginSimo Sorce2012-10-251-0/+8
|
* Add initialization codeSimo Sorce2012-10-251-0/+106
For now return fixed list of mechanisms. Later on we can try to fetch this list from the proxy. Also split RPC client code from actual plugin