int ioctl(int handle, int command, void *buffer) { FileDescriptor *descriptor = static_cast<FileDescriptor*>(GetResource(handle, OBJ_FD)); if (descriptor == 0) return E_BAD_HANDLE; int ret = descriptor->Control(command, buffer); descriptor->ReleaseRef(); return ret; }