Lines Matching +full:- +full:42
1 // SPDX-License-Identifier: GPL-2.0
2 /* Copyright (c) 2022-2024 Red Hat */
20 if (self->hidraw_fd)
21 close(self->hidraw_fd);
22 self->hidraw_fd = 0;
28 uhid_destroy(_metadata, &self->hid);
31 pthread_join(self->hid.tid, &uhid_err);
42 err = setup_uhid(_metadata, &self->hid, BUS_USB, 0x0001, 0x0a37, rdesc, sizeof(rdesc));
45 self->hidraw_fd = open_hidraw(&self->hid);
46 ASSERT_GE(self->hidraw_fd, 0) TH_LOG("open_hidraw");
68 buf[1] = 42;
69 uhid_send_event(_metadata, &self->hid, buf, 6);
73 err = read(self->hidraw_fd, buf, sizeof(buf));
76 ASSERT_EQ(buf[1], 42);
90 buf[1] = 42;
91 uhid_send_event(_metadata, &self->hid, buf, 6);
95 err = read(self->hidraw_fd, buf, sizeof(buf));
98 ASSERT_EQ(buf[1], 42);
101 err = ioctl(self->hidraw_fd, HIDIOCREVOKE, NULL);
107 uhid_send_event(_metadata, &self->hid, buf, 6);
111 err = read(self->hidraw_fd, buf, sizeof(buf));
112 ASSERT_EQ(err, -1) TH_LOG("read_hidraw");
125 err = ioctl(self->hidraw_fd, HIDIOCREVOKE, NULL);
129 err = ioctl(self->hidraw_fd, HIDIOCGRDESCSIZE, &desc_size);
130 ASSERT_EQ(err, -1) TH_LOG("ioctl_hidraw");
145 pfds[0].fd = self->hidraw_fd;
150 buf[1] = 42;
151 uhid_send_event(_metadata, &self->hid, buf, 6);
159 err = read(self->hidraw_fd, buf, sizeof(buf));
162 ASSERT_EQ(buf[1], 42);
165 err = ioctl(self->hidraw_fd, HIDIOCREVOKE, NULL);
188 buf[2] = 42;
196 err = write(self->hidraw_fd, buf, 3);
204 ASSERT_EQ(output_report[2], 42);
207 err = ioctl(self->hidraw_fd, HIDIOCREVOKE, NULL);
213 err = write(self->hidraw_fd, buf, 3);
230 err = ioctl(self->hidraw_fd, HIDIOCGRDESCSIZE, &desc_size);
248 err = ioctl(self->hidraw_fd, HIDIOCGRDESC, &desc);
267 err = ioctl(self->hidraw_fd, HIDIOCGRDESC, &desc);
284 err = ioctl(self->hidraw_fd, HIDIOCGRAWINFO, &devinfo);
308 err = ioctl(self->hidraw_fd, HIDIOCGFEATURE(sizeof(buf)), buf);
330 err = ioctl(self->hidraw_fd, HIDIOCGFEATURE(sizeof(buf)), buf);
350 err = ioctl(self->hidraw_fd, bad_cmd, buf);
351 ASSERT_LT(err, 0) TH_LOG("ioctl read-write with wrong _IOC_NR (0) should have failed");
353 TH_LOG("expected ENOTTY for wrong read-write _IOC_NR (0), got errno %d", errno);
361 err = ioctl(self->hidraw_fd, bad_cmd, buf);
362 ASSERT_LT(err, 0) TH_LOG("ioctl read-only with wrong _IOC_NR (0) should have failed");
364 TH_LOG("expected ENOTTY for wrong read-only _IOC_NR (0), got errno %d", errno);
369 err = ioctl(self->hidraw_fd, bad_cmd, buf);
370 ASSERT_LT(err, 0) TH_LOG("ioctl read-only with wrong _IOC_NR (0x42) should have failed");
372 TH_LOG("expected ENOTTY for wrong read-only _IOC_NR (0x42), got errno %d", errno);
377 err = ioctl(self->hidraw_fd, bad_cmd, buf);
378 ASSERT_LT(err, 0) TH_LOG("ioctl read-write with wrong _IOC_NR (0x42) should have failed");
380 TH_LOG("expected ENOTTY for wrong read-write _IOC_NR (0x42), got errno %d", errno);
398 err = ioctl(self->hidraw_fd, bad_cmd, buf);
422 err = ioctl(self->hidraw_fd, bad_cmd, buf);
429 err = ioctl(self->hidraw_fd, bad_cmd, buf);
435 * Test read-only ioctl with incorrect _IOC_DIR bits
450 err = ioctl(self->hidraw_fd, bad_cmd, buf);
457 err = ioctl(self->hidraw_fd, bad_cmd, buf);
476 err = ioctl(self->hidraw_fd, HIDIOCSFEATURE(3), buf);
497 err = ioctl(self->hidraw_fd, HIDIOCGINPUT(sizeof(buf)), buf);
519 err = ioctl(self->hidraw_fd, HIDIOCGINPUT(sizeof(buf)), buf);
538 err = ioctl(self->hidraw_fd, HIDIOCSINPUT(3), buf);
559 err = ioctl(self->hidraw_fd, HIDIOCGOUTPUT(sizeof(buf)), buf);
581 err = ioctl(self->hidraw_fd, HIDIOCGOUTPUT(sizeof(buf)), buf);
600 err = ioctl(self->hidraw_fd, HIDIOCSOUTPUT(3), buf);
619 err = ioctl(self->hidraw_fd, HIDIOCGRAWNAME(sizeof(name)), name);
623 snprintf(expected_name, sizeof(expected_name), "test-uhid-device-%d", self->hid.dev_id);
640 err = ioctl(self->hidraw_fd, HIDIOCGRAWPHYS(sizeof(phys)), phys);
644 snprintf(expected_phys, sizeof(expected_phys), "%d", self->hid.dev_id);
660 err = ioctl(self->hidraw_fd, HIDIOCGRAWUNIQ(sizeof(uniq)), uniq);
677 err = ioctl(self->hidraw_fd, HIDIOCGRAWNAME(sizeof(small_buf)), small_buf);
682 snprintf(expected_name, sizeof(expected_name), "test-uhid-device-%d", self->hid.dev_id);