diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/chip.c | 1 | ||||
-rw-r--r-- | tests/flashrom.c | 1 | ||||
-rw-r--r-- | tests/helpers.c | 1 | ||||
-rw-r--r-- | tests/layout.c | 1 | ||||
-rw-r--r-- | tests/libusb_wraps.c | 1 | ||||
-rw-r--r-- | tests/libusb_wraps.h | 46 | ||||
-rw-r--r-- | tests/lifecycle.c | 1 | ||||
-rw-r--r-- | tests/spi25.c | 2 | ||||
-rw-r--r-- | tests/tests.c | 1 | ||||
-rw-r--r-- | tests/wraps.h | 71 |
10 files changed, 126 insertions, 0 deletions
diff --git a/tests/chip.c b/tests/chip.c index 444d411ad..6f0317264 100644 --- a/tests/chip.c +++ b/tests/chip.c @@ -29,6 +29,7 @@ #include <stdio.h> #include <string.h> +#include "tests.h" #include "chipdrivers.h" #include "flash.h" #include "io_mock.h" diff --git a/tests/flashrom.c b/tests/flashrom.c index c3508c510..cc8883132 100644 --- a/tests/flashrom.c +++ b/tests/flashrom.c @@ -14,6 +14,7 @@ */ #include <include/test.h> +#include "tests.h" #include "programmer.h" diff --git a/tests/helpers.c b/tests/helpers.c index 4376eee9f..e2e652edf 100644 --- a/tests/helpers.c +++ b/tests/helpers.c @@ -15,6 +15,7 @@ #include <include/test.h> +#include "tests.h" #include "flash.h" #include <stdint.h> diff --git a/tests/layout.c b/tests/layout.c index 1e7e31d16..e71debfe2 100644 --- a/tests/layout.c +++ b/tests/layout.c @@ -16,6 +16,7 @@ #include <include/test.h> #include <stdio.h> +#include "tests.h" #include "flash.h" #include "layout.h" #include "libflashrom.h" diff --git a/tests/libusb_wraps.c b/tests/libusb_wraps.c index 8f9e243fb..4e68ba72f 100644 --- a/tests/libusb_wraps.c +++ b/tests/libusb_wraps.c @@ -17,6 +17,7 @@ #include <include/test.h> #include "io_mock.h" +#include "libusb_wraps.h" void *__wrap_usb_dev_get_by_vid_pid_number( libusb_context *usb_ctx, uint16_t vid, uint16_t pid, unsigned int num) diff --git a/tests/libusb_wraps.h b/tests/libusb_wraps.h new file mode 100644 index 000000000..b10b8c0cb --- /dev/null +++ b/tests/libusb_wraps.h @@ -0,0 +1,46 @@ +/* + * This file is part of the flashrom project. + * + * Copyright 2022 Google LLC + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef LIBUSB_WRAPS_H +#define LIBUSB_WRAPS_H + +#include <libusb.h> + +void *__wrap_usb_dev_get_by_vid_pid_number( + libusb_context *usb_ctx, uint16_t vid, uint16_t pid, unsigned int num); +int __wrap_libusb_init(libusb_context **ctx); +int __wrap_libusb_open(libusb_device *dev, libusb_device_handle **devh); +int __wrap_libusb_set_auto_detach_kernel_driver(libusb_device_handle *devh, int enable); +ssize_t __wrap_libusb_get_device_list(libusb_context *ctx, libusb_device ***list); +void __wrap_libusb_free_device_list(libusb_device **list, int unref_devices); +uint8_t __wrap_libusb_get_bus_number(libusb_device *dev); +uint8_t __wrap_libusb_get_device_address(libusb_device *dev); +int __wrap_libusb_get_device_descriptor(libusb_device *dev, struct libusb_device_descriptor *desc); +int __wrap_libusb_get_config_descriptor( + libusb_device *dev, uint8_t config_index, struct libusb_config_descriptor **config); +void __wrap_libusb_free_config_descriptor(struct libusb_config_descriptor *config); +int __wrap_libusb_get_configuration(libusb_device_handle *devh, int *config); +int __wrap_libusb_set_configuration(libusb_device_handle *devh, int config); +int __wrap_libusb_claim_interface(libusb_device_handle *devh, int interface_number); +int __wrap_libusb_control_transfer(libusb_device_handle *devh, uint8_t bmRequestType, + uint8_t bRequest, uint16_t wValue, uint16_t wIndex, unsigned char *data, + uint16_t wLength, unsigned int timeout); +int __wrap_libusb_release_interface(libusb_device_handle *devh, int interface_number); +void __wrap_libusb_close(libusb_device_handle *devh); +libusb_device *__wrap_libusb_ref_device(libusb_device *dev); +void __wrap_libusb_unref_device(libusb_device *dev); +void __wrap_libusb_exit(libusb_context *ctx); + +#endif /* LIBUSB_WRAPS_H */ diff --git a/tests/lifecycle.c b/tests/lifecycle.c index 236d1d7be..63fcc3c4b 100644 --- a/tests/lifecycle.c +++ b/tests/lifecycle.c @@ -17,6 +17,7 @@ #include <string.h> #include <linux/spi/spidev.h> +#include "tests.h" #include "libflashrom.h" #include "io_mock.h" #include "programmer.h" diff --git a/tests/spi25.c b/tests/spi25.c index 251c98c09..f57251ea8 100644 --- a/tests/spi25.c +++ b/tests/spi25.c @@ -15,6 +15,8 @@ #include <include/test.h> +#include "wraps.h" +#include "tests.h" #include "programmer.h" #include "flashchips.h" #include "chipdrivers.h" diff --git a/tests/tests.c b/tests/tests.c index 3eef47e4d..6aabd9081 100644 --- a/tests/tests.c +++ b/tests/tests.c @@ -16,6 +16,7 @@ #include <include/test.h> #include "io_mock.h" #include "tests.h" +#include "wraps.h" #include <stdio.h> #include <string.h> diff --git a/tests/wraps.h b/tests/wraps.h new file mode 100644 index 000000000..c088d98d7 --- /dev/null +++ b/tests/wraps.h @@ -0,0 +1,71 @@ +/* + * This file is part of the flashrom project. + * + * Copyright 2022 Google LLC + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + */ + +#ifndef WRAPS_H +#define WRAPS_H + +#include <stdio.h> +#include "flash.h" + +char *__wrap_strdup(const char *s); +void __wrap_physunmap(void *virt_addr, size_t len); +void *__wrap_physmap(const char *descr, uintptr_t phys_addr, size_t len); +struct pci_dev *__wrap_pcidev_init(void *devs, int bar); +uintptr_t __wrap_pcidev_readbar(void *dev, int bar); +void __wrap_sio_write(uint16_t port, uint8_t reg, uint8_t data); +uint8_t __wrap_sio_read(uint16_t port, uint8_t reg); +int __wrap_open(const char *pathname, int flags); +int __wrap_open64(const char *pathname, int flags); +int __wrap___open64_2(const char *pathname, int flags); +int __wrap_ioctl(int fd, unsigned long int request, ...); +int __wrap_write(int fd, const void *buf, size_t sz); +int __wrap_read(int fd, void *buf, size_t sz); +FILE *__wrap_fopen(const char *pathname, const char *mode); +FILE *__wrap_fopen64(const char *pathname, const char *mode); +FILE *__wrap_fdopen(int fd, const char *mode); +int __wrap_stat(const char *path, void *buf); +int __wrap_stat64(const char *path, void *buf); +int __wrap___xstat(const char *path, void *buf); +int __wrap___xstat64(const char *path, void *buf); +int __wrap_fstat(int fd, void *buf); +int __wrap_fstat64(int fd, void *buf); +int __wrap___fxstat(int fd, void *buf); +int __wrap___fxstat64(int fd, void *buf); +char *__wrap_fgets(char *buf, int len, FILE *fp); +char *__wrap___fgets_chk(char *buf, int len, FILE *fp); +size_t __wrap_fread(void *ptr, size_t size, size_t nmemb, FILE *fp); +size_t __wrap_fwrite(const void *ptr, size_t size, size_t nmemb, FILE *fp); +int __wrap_fflush(FILE *fp); +int __wrap_fileno(FILE *fp); +int __wrap_fsync(int fd); +int __wrap_setvbuf(FILE *fp, char *buf, int type, size_t size); +int __wrap_fprintf(FILE *fp, const char *fmt, ...); +int __wrap___vfprintf_chk(FILE *fp, const char *fmt, va_list args); +int __wrap_fclose(FILE *fp); +int __wrap_feof(FILE *fp); +int __wrap_ferror(FILE *fp); +void __wrap_clearerr(FILE *fp); +int __wrap_rget_io_perms(void); +void __wrap_test_outb(unsigned char value, unsigned short port); +unsigned char __wrap_test_inb(unsigned short port); +void __wrap_test_outw(unsigned short value, unsigned short port); +unsigned short __wrap_test_inw(unsigned short port); +void __wrap_test_outl(unsigned int value, unsigned short port); +unsigned int __wrap_test_inl(unsigned short port); +int __wrap_spi_send_command(const struct flashctx *flash, + unsigned int writecnt, unsigned int readcnt, + const unsigned char *writearr, unsigned char *readarr); + +#endif /* WRAPS_H */ |