summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/os/contract.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/uts/common/os/contract.c')
-rw-r--r--usr/src/uts/common/os/contract.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/usr/src/uts/common/os/contract.c b/usr/src/uts/common/os/contract.c
index 909a6c2860..9e498dc1c7 100644
--- a/usr/src/uts/common/os/contract.c
+++ b/usr/src/uts/common/os/contract.c
@@ -1542,6 +1542,7 @@ ctmpl_set(ct_template_t *template, ct_kparam_t *kparam, const cred_t *cr)
ct_param_t *param = &kparam->param;
uint64_t param_value;
+ param_value = 0;
if (param->ctpm_id == CTP_COOKIE ||
param->ctpm_id == CTP_EV_INFO ||
param->ctpm_id == CTP_EV_CRITICAL) {
@@ -1612,6 +1613,7 @@ ctmpl_get(ct_template_t *template, ct_kparam_t *kparam)
ct_param_t *param = &kparam->param;
uint64_t *param_value;
+ param_value = NULL;
if (param->ctpm_id == CTP_COOKIE ||
param->ctpm_id == CTP_EV_INFO ||
param->ctpm_id == CTP_EV_CRITICAL) {
@@ -1626,13 +1628,16 @@ ctmpl_get(ct_template_t *template, ct_kparam_t *kparam)
mutex_enter(&template->ctmpl_lock);
switch (param->ctpm_id) {
case CTP_COOKIE:
- *param_value = template->ctmpl_cookie;
+ if (param_value != NULL)
+ *param_value = template->ctmpl_cookie;
break;
case CTP_EV_INFO:
- *param_value = template->ctmpl_ev_info;
+ if (param_value != NULL)
+ *param_value = template->ctmpl_ev_info;
break;
case CTP_EV_CRITICAL:
- *param_value = template->ctmpl_ev_crit;
+ if (param_value != NULL)
+ *param_value = template->ctmpl_ev_crit;
break;
default:
result = template->ctmpl_ops->ctop_get(template, kparam);