diff options
Diffstat (limited to 'proxy/src')
-rw-r--r-- | proxy/src/mechglue/gss_plugin.c | 24 | ||||
-rw-r--r-- | proxy/src/mechglue/gss_plugin.h | 2 |
2 files changed, 26 insertions, 0 deletions
diff --git a/proxy/src/mechglue/gss_plugin.c b/proxy/src/mechglue/gss_plugin.c index c240257..4bfaa2c 100644 --- a/proxy/src/mechglue/gss_plugin.c +++ b/proxy/src/mechglue/gss_plugin.c @@ -342,6 +342,30 @@ done: return amechs; } +#define MAP_ERROR_BASE 0x04200000 + +uint32_t gpp_map_error(uint32_t err) +{ + /* placeholder, + * we will need an actual map but to speed up testing just make a sum with + * a special base and hope no conflicts will happen in the mechglue */ + if (err) { + err += MAP_ERROR_BASE; + } + return err; +} + +uint32_t gpp_unmap_error(uint32_t err) +{ + /* placeholder, + * we will need an actual map but to speed up testing just make a sum with + * a special base and hope no conflicts will happen in the mechglue */ + if (err) { + err -= MAP_ERROR_BASE; + } + return err; +} + /* gssi_acquire_cred gssi_release_cred diff --git a/proxy/src/mechglue/gss_plugin.h b/proxy/src/mechglue/gss_plugin.h index 1807fc0..f57fa4c 100644 --- a/proxy/src/mechglue/gss_plugin.h +++ b/proxy/src/mechglue/gss_plugin.h @@ -43,5 +43,7 @@ enum gpp_behavior gpp_get_behavior(void); bool gpp_is_special_oid(const gss_OID mech_type); const gss_OID gpp_special_mech(const gss_OID mech_type); gss_OID_set gpp_special_available_mechs(const gss_OID_set mechs); +uint32_t gpp_map_error(uint32_t err); +uint32_t gpp_unmap_error(uint32_t err); #endif /* _GSS_PLUGIN_H_ */ |