diff options
author | Simo Sorce <simo@redhat.com> | 2012-05-31 18:49:23 -0400 |
---|---|---|
committer | Günther Deschner <gdeschner@redhat.com> | 2012-06-26 14:44:43 +0200 |
commit | 5c3b786c58ed45b13b845f51e2fcda4f73b70631 (patch) | |
tree | b81e5587ef2e40d1db9b1218c707c24214967ead /proxy/src | |
parent | fb9eaff14b269fc64047aff73d78bb7bc46db906 (diff) | |
download | gss-proxy-5c3b786c58ed45b13b845f51e2fcda4f73b70631.tar.gz gss-proxy-5c3b786c58ed45b13b845f51e2fcda4f73b70631.tar.xz gss-proxy-5c3b786c58ed45b13b845f51e2fcda4f73b70631.zip |
Implement acquire cred mechglue wrappers
Diffstat (limited to 'proxy/src')
-rw-r--r-- | proxy/src/mechglue/gpp_acquire_cred.c | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/proxy/src/mechglue/gpp_acquire_cred.c b/proxy/src/mechglue/gpp_acquire_cred.c new file mode 100644 index 0000000..61fcec7 --- /dev/null +++ b/proxy/src/mechglue/gpp_acquire_cred.c @@ -0,0 +1,82 @@ +/* + GSS-PROXY + + Copyright (C) 2012 Red Hat, Inc. + Copyright (C) 2012 Simo Sorce <simo.sorce@redhat.com> + + Permission is hereby granted, free of charge, to any person obtaining a + copy of this software and associated documentation files (the "Software"), + to deal in the Software without restriction, including without limitation + the rights to use, copy, modify, merge, publish, distribute, sublicense, + and/or sell copies of the Software, and to permit persons to whom the + Software is furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in + all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + DEALINGS IN THE SOFTWARE. +*/ + + +#include "gss_plugin.h" + +OM_uint32 gssi_acquire_cred(OM_uint32 *minor_status, + const gss_name_t desired_name, + OM_uint32 time_req, + const gss_OID_set desired_mechs, + gss_cred_usage_t cred_usage, + gss_cred_id_t *output_cred_handle, + gss_OID_set *actual_mechs, + OM_uint32 *time_rec) +{ + OM_uint32 maj, min; + + maj = gpm_acquire_cred(&min, + desired_name, + time_req, + desired_mechs, + cred_usage, + output_cred_handle, + actual_mechs, + time_rec); + + *minor_status = gpm_map_error(min); + return maj; +} + +OM_uint32 gssi_add_cred(OM_uint32 *minor_status, + const gss_cred_id_t input_cred_handle, + const gss_name_t desired_name, + const gss_OID desired_mech, + gss_cred_usage_t cred_usage, + OM_uint32 initiator_time_req, + OM_uint32 acceptor_time_req, + gss_cred_id_t *output_cred_handle, + gss_OID_set *actual_mechs, + OM_uint32 *initiator_time_rec, + OM_uint32 *acceptor_time_rec) +{ + OM_uint32 maj, min; + + maj = gpm_add_cred(&min, + input_cred_handle, + desired_name, + desired_mech, + cred_usage, + initiator_time_req, + acceptor_time_req, + output_cred_handle, + actual_mechs, + initiator_time_rec, + acceptor_time_rec); + + *minor_status = gpm_map_error(min); + return maj; +} + |