diff options
Diffstat (limited to 'net/sunrpc/auth_gss/gss_mech_switch.c')
-rw-r--r-- | net/sunrpc/auth_gss/gss_mech_switch.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/net/sunrpc/auth_gss/gss_mech_switch.c b/net/sunrpc/auth_gss/gss_mech_switch.c index f8bac6ccd524..d88468d21c37 100644 --- a/net/sunrpc/auth_gss/gss_mech_switch.c +++ b/net/sunrpc/auth_gss/gss_mech_switch.c | |||
@@ -224,7 +224,8 @@ EXPORT_SYMBOL(gss_service_to_auth_domain_name); | |||
224 | void | 224 | void |
225 | gss_mech_put(struct gss_api_mech * gm) | 225 | gss_mech_put(struct gss_api_mech * gm) |
226 | { | 226 | { |
227 | module_put(gm->gm_owner); | 227 | if (gm) |
228 | module_put(gm->gm_owner); | ||
228 | } | 229 | } |
229 | 230 | ||
230 | EXPORT_SYMBOL(gss_mech_put); | 231 | EXPORT_SYMBOL(gss_mech_put); |
@@ -307,8 +308,7 @@ gss_delete_sec_context(struct gss_ctx **context_handle) | |||
307 | (*context_handle)->mech_type->gm_ops | 308 | (*context_handle)->mech_type->gm_ops |
308 | ->gss_delete_sec_context((*context_handle) | 309 | ->gss_delete_sec_context((*context_handle) |
309 | ->internal_ctx_id); | 310 | ->internal_ctx_id); |
310 | if ((*context_handle)->mech_type) | 311 | gss_mech_put((*context_handle)->mech_type); |
311 | gss_mech_put((*context_handle)->mech_type); | ||
312 | kfree(*context_handle); | 312 | kfree(*context_handle); |
313 | *context_handle=NULL; | 313 | *context_handle=NULL; |
314 | return GSS_S_COMPLETE; | 314 | return GSS_S_COMPLETE; |