Lines Matching defs:exec
69 i2c_ioctl_exec exec;
72 if (user_memcpy(&exec, data, sizeof(i2c_ioctl_exec)) != B_OK)
75 if (exec.cmdBuffer == NULL)
76 exec.cmdLength = 0;
77 if (exec.buffer == NULL)
78 exec.bufferLength = 0;
79 BStackOrHeapArray<uint8, 32> cmdBuffer(exec.cmdLength);
80 BStackOrHeapArray<uint8, 32> buffer(exec.bufferLength);
84 if (exec.cmdBuffer != NULL) {
85 if (!IS_USER_ADDRESS(exec.cmdBuffer)
86 || user_memcpy(cmdBuffer, exec.cmdBuffer, exec.cmdLength)
90 userCmdBuffer = exec.cmdBuffer;
91 exec.cmdBuffer = cmdBuffer;
93 if (exec.buffer != NULL) {
94 if (!IS_USER_ADDRESS(exec.buffer)
95 || user_memcpy(buffer, exec.buffer, exec.bufferLength)
99 userBuffer = exec.buffer;
100 exec.buffer = buffer;
107 status = bus->ExecCommand(exec.op, exec.addr,
108 exec.cmdBuffer, exec.cmdLength, exec.buffer,
109 exec.bufferLength);
115 exec.cmdBuffer = userCmdBuffer;
116 if (exec.buffer != NULL) {
117 if (user_memcpy(userBuffer, exec.buffer, exec.bufferLength)
121 exec.buffer = userBuffer;
124 if (user_memcpy(data, &exec, sizeof(i2c_ioctl_exec)) != B_OK)