From bda3bff2f6b24dc48336fb81650aa38779122ea8 Mon Sep 17 00:00:00 2001 From: CLARATION Date: Fri, 26 Jun 2026 11:08:45 -0700 Subject: [PATCH] refactor(usb): move into distinct dirs, cleanup --- .gitignore | 3 +++ src/usb/{ => iokit}/usb_iokit.c | 2 +- src/usb/{ => iokit}/usb_iokit.h | 0 src/usb/{ => libusb}/usb_libusb.c | 2 +- src/usb/{ => libusb}/usb_libusb.h | 0 src/usb/shim.c | 4 ++-- src/usb/shim.h | 4 ++-- src/utils.c | 21 +++++++++++++++++++++ src/utils.h | 20 ++------------------ 9 files changed, 32 insertions(+), 24 deletions(-) rename src/usb/{ => iokit}/usb_iokit.c (99%) rename src/usb/{ => iokit}/usb_iokit.h (100%) rename src/usb/{ => libusb}/usb_libusb.c (99%) rename src/usb/{ => libusb}/usb_libusb.h (100%) create mode 100644 src/utils.c diff --git a/.gitignore b/.gitignore index 2c72376..365f1f7 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,6 @@ build/ .DS_Store src/gen/ payloads/Pongo.bin +payloads/checkra1n-kpf-pongo +payloads/ramdisk.dmg +payloads/binpack.dmg diff --git a/src/usb/usb_iokit.c b/src/usb/iokit/usb_iokit.c similarity index 99% rename from src/usb/usb_iokit.c rename to src/usb/iokit/usb_iokit.c index 10becb9..eceb563 100644 --- a/src/usb/usb_iokit.c +++ b/src/usb/iokit/usb_iokit.c @@ -9,7 +9,7 @@ #include #include -#include "../utils.h" +#include "../../utils.h" static void cf_dictionary_set_int16(CFMutableDictionaryRef dict, const void *key, uint16_t val) { CFNumberRef cf_val = CFNumberCreate(kCFAllocatorDefault, kCFNumberSInt16Type, &val); diff --git a/src/usb/usb_iokit.h b/src/usb/iokit/usb_iokit.h similarity index 100% rename from src/usb/usb_iokit.h rename to src/usb/iokit/usb_iokit.h diff --git a/src/usb/usb_libusb.c b/src/usb/libusb/usb_libusb.c similarity index 99% rename from src/usb/usb_libusb.c rename to src/usb/libusb/usb_libusb.c index 3de153a..4710397 100644 --- a/src/usb/usb_libusb.c +++ b/src/usb/libusb/usb_libusb.c @@ -8,7 +8,7 @@ #include -#include "../utils.h" +#include "../../utils.h" void close_usb_handle(usb_handle_t *handle) { libusb_close(handle->device); diff --git a/src/usb/usb_libusb.h b/src/usb/libusb/usb_libusb.h similarity index 100% rename from src/usb/usb_libusb.h rename to src/usb/libusb/usb_libusb.h diff --git a/src/usb/shim.c b/src/usb/shim.c index 6410dc4..22d5e4e 100644 --- a/src/usb/shim.c +++ b/src/usb/shim.c @@ -4,9 +4,9 @@ #include #ifdef __APPLE__ -# include "usb_iokit.h" +# include "iokit/usb_iokit.h" #else -# include "usb_libusb.h" +# include "libusb/usb_libusb.h" #endif bool send_usb_control_request_no_data(const usb_handle_t *handle, uint8_t bm_request_type, uint8_t b_request, uint16_t w_value, uint16_t w_index, size_t w_len, transfer_ret_t *transfer_ret) { diff --git a/src/usb/shim.h b/src/usb/shim.h index 5abed89..8e751ba 100644 --- a/src/usb/shim.h +++ b/src/usb/shim.h @@ -2,9 +2,9 @@ #define BACKEND_SHIM_H #ifdef __APPLE__ -# include "usb_iokit.h" +# include "iokit/usb_iokit.h" #else -# include "usb_libusb.h" +# include "libusb/usb_libusb.h" #endif bool send_usb_control_request_no_data(const usb_handle_t *handle, uint8_t bm_request_type, uint8_t b_request, uint16_t w_value, uint16_t w_index, size_t w_len, transfer_ret_t *transfer_ret); diff --git a/src/utils.c b/src/utils.c new file mode 100644 index 0000000..9b311d2 --- /dev/null +++ b/src/utils.c @@ -0,0 +1,21 @@ +#include "utils.h" + +#ifdef __WIN32 +# include +#else +# include +#endif + +uint64_t palerain_flags = 0; + +void sleep_ms(unsigned ms) { + #ifdef __WIN32 + Sleep(ms); + #else + struct timespec ts; + + ts.tv_sec = ms / 1000; + ts.tv_nsec = (ms % 1000) * 1000000L; + nanosleep(&ts, NULL); + #endif +} diff --git a/src/utils.h b/src/utils.h index abf7f8a..84f8494 100644 --- a/src/utils.h +++ b/src/utils.h @@ -6,27 +6,11 @@ #include #include -#ifdef __WIN32 -# include -#else -# include -#endif - #define LOG(fmt, ...) \ printf("(%s:%d) => " fmt "\n", __FILE__, __LINE__, ##__VA_ARGS__) -static void sleep_ms(unsigned ms) { - #ifdef __WIN32 - Sleep(ms); - #else - struct timespec ts; +void sleep_ms(unsigned ms); - ts.tv_sec = ms / 1000; - ts.tv_nsec = (ms % 1000) * 1000000L; - nanosleep(&ts, NULL); - #endif -} - -static uint64_t palerain_flags = 0; +extern uint64_t palerain_flags; #endif // CONSTANTS_H