Lines Matching refs:uvio_attest

85 				  u8 *meas, u8 *add_data, struct uvio_attest *uvio_attest)
87 void __user *user_buf_arcb = (void __user *)uvio_attest->arcb_addr;
89 if (copy_from_user(arcb, user_buf_arcb, uvio_attest->arcb_len))
96 uvcb_attest->user_data_len = uvio_attest->user_data_len;
97 memcpy(uvcb_attest->user_data, uvio_attest->user_data, sizeof(uvcb_attest->user_data));
98 uvcb_attest->meas_len = uvio_attest->meas_len;
100 uvcb_attest->add_data_len = uvio_attest->add_data_len;
109 struct uvio_attest *uvio_attest)
111 struct uvio_attest __user *user_uvio_attest = (void __user *)uv_ioctl->argument_addr;
112 void __user *user_buf_add = (void __user *)uvio_attest->add_data_addr;
113 void __user *user_buf_meas = (void __user *)uvio_attest->meas_addr;
116 if (copy_to_user(user_buf_meas, measurement, uvio_attest->meas_len))
118 if (add_data && copy_to_user(user_buf_add, add_data, uvio_attest->add_data_len))
125 static int get_uvio_attest(struct uvio_ioctl_cb *uv_ioctl, struct uvio_attest *uvio_attest)
129 if (copy_from_user(uvio_attest, user_arg_buf, sizeof(*uvio_attest)))
132 if (uvio_attest->arcb_len > UVIO_ATT_ARCB_MAX_LEN)
134 if (uvio_attest->arcb_len == 0)
136 if (uvio_attest->meas_len > UVIO_ATT_MEASUREMENT_MAX_LEN)
138 if (uvio_attest->meas_len == 0)
140 if (uvio_attest->add_data_len > UVIO_ATT_ADDITIONAL_MAX_LEN)
142 if (uvio_attest->reserved136)
182 struct uvio_attest *uvio_attest = NULL;
189 if (uv_ioctl->argument_len != sizeof(*uvio_attest))
193 uvio_attest = kzalloc(sizeof(*uvio_attest), GFP_KERNEL);
194 if (!uvio_attest)
197 ret = get_uvio_attest(uv_ioctl, uvio_attest);
202 arcb = kvzalloc(uvio_attest->arcb_len, GFP_KERNEL);
203 measurement = kvzalloc(uvio_attest->meas_len, GFP_KERNEL);
207 if (uvio_attest->add_data_len) {
208 add_data = kvzalloc(uvio_attest->add_data_len, GFP_KERNEL);
217 ret = uvio_build_uvcb_attest(uvcb_attest, arcb, measurement, add_data, uvio_attest);
227 uvio_attest);
232 kfree(uvio_attest);