Lines Matching refs:piop
284 PHPT_IOCTL_PARAM piop;
298 piop = (PHPT_IOCTL_PARAM)buffer;
299 if (piop->Magic == HPT_IOCTL_MAGIC ||
300 piop->Magic == HPT_IOCTL_MAGIC32) {
302 piop->dwIoControlCode,
303 piop->lpInBuffer,
304 piop->nInBufferSize,
305 piop->lpOutBuffer,
306 piop->nOutBufferSize));
311 if (piop->nInBufferSize > PAGE_SIZE ||
312 piop->nOutBufferSize > PAGE_SIZE ||
313 piop->nInBufferSize+piop->nOutBufferSize > PAGE_SIZE) {
318 ke_area = malloc(piop->nInBufferSize+piop->nOutBufferSize, M_DEVBUF, M_NOWAIT);
324 if (piop->nInBufferSize) {
325 if (copyin((void*)(ULONG_PTR)piop->lpInBuffer, ke_area, piop->nInBufferSize) != 0) {
336 piop->dwIoControlCode, ke_area, piop->nInBufferSize,
337 ke_area + piop->nInBufferSize, piop->nOutBufferSize, &dwRet);
340 if (piop->nOutBufferSize)
341 copyout(ke_area + piop->nInBufferSize, (void*)(ULONG_PTR)piop->lpOutBuffer, piop->nOutBufferSize);
343 if (piop->lpBytesReturned)
344 copyout(&dwRet, (void*)(ULONG_PTR)piop->lpBytesReturned, sizeof(DWORD));
354 KdPrintW(("Wrong signature: %x\n", piop->Magic));