Added wrapped libudev0 and libudev1

This commit is contained in:
ptitSeb 2021-03-26 22:48:22 +01:00
parent c33368bfb4
commit a7119cae76
9 changed files with 220 additions and 2 deletions

View File

@ -219,6 +219,8 @@ set(WRAPPEDS
"${BOX64_ROOT}/src/wrapped/wrappedsdl2mixer.c"
"${BOX64_ROOT}/src/wrapped/wrappedsdl2ttf.c"
"${BOX64_ROOT}/src/wrapped/wrappedsmpeg2.c"
"${BOX64_ROOT}/src/wrapped/wrappedudev0.c"
"${BOX64_ROOT}/src/wrapped/wrappedudev1.c"
"${BOX64_ROOT}/src/wrapped/wrappedvorbisfile.c"
"${BOX64_ROOT}/src/wrapped/wrappedxinerama.c"
)

View File

@ -71,8 +71,8 @@ GO("libalure.so.1", alure)
//GO("libturbojpeg.so.0", turbojpeg)
//GO("libcurl.so.4", curl)
//GO("libcurl-gnutls.so.4", curl)
//GO("libudev.so.0", udev0)
//GO("libudev.so.1", udev1)
GO("libudev.so.0", udev0)
GO("libudev.so.1", udev1)
GO("libdbus-1.so.3", dbus)
//GO("libiconv.so.2", iconv)
//GO("libdrm.so.2", libdrm)

View File

@ -104,6 +104,7 @@
#() iFpI
#() iFpC
#() iFpu
#() iFpU
#() iFpf
#() iFpd
#() iFpl
@ -252,6 +253,7 @@
#() iFpuU
#() iFpuL
#() iFpup
#() iFpUU
#() iFpfu
#() iFpff
#() iFpli
@ -331,6 +333,7 @@
#() pFpiL
#() pFpip
#() pFpCC
#() pFpCu
#() pFpui
#() pFpuu
#() pFpuL

View File

@ -137,6 +137,7 @@ typedef int32_t (*iFpi_t)(void*, int32_t);
typedef int32_t (*iFpI_t)(void*, int64_t);
typedef int32_t (*iFpC_t)(void*, uint8_t);
typedef int32_t (*iFpu_t)(void*, uint32_t);
typedef int32_t (*iFpU_t)(void*, uint64_t);
typedef int32_t (*iFpf_t)(void*, float);
typedef int32_t (*iFpd_t)(void*, double);
typedef int32_t (*iFpl_t)(void*, intptr_t);
@ -285,6 +286,7 @@ typedef int32_t (*iFpuu_t)(void*, uint32_t, uint32_t);
typedef int32_t (*iFpuU_t)(void*, uint32_t, uint64_t);
typedef int32_t (*iFpuL_t)(void*, uint32_t, uintptr_t);
typedef int32_t (*iFpup_t)(void*, uint32_t, void*);
typedef int32_t (*iFpUU_t)(void*, uint64_t, uint64_t);
typedef int32_t (*iFpfu_t)(void*, float, uint32_t);
typedef int32_t (*iFpff_t)(void*, float, float);
typedef int32_t (*iFpli_t)(void*, intptr_t, int32_t);
@ -364,6 +366,7 @@ typedef void* (*pFpiu_t)(void*, int32_t, uint32_t);
typedef void* (*pFpiL_t)(void*, int32_t, uintptr_t);
typedef void* (*pFpip_t)(void*, int32_t, void*);
typedef void* (*pFpCC_t)(void*, uint8_t, uint8_t);
typedef void* (*pFpCu_t)(void*, uint8_t, uint32_t);
typedef void* (*pFpui_t)(void*, uint32_t, int32_t);
typedef void* (*pFpuu_t)(void*, uint32_t, uint32_t);
typedef void* (*pFpuL_t)(void*, uint32_t, uintptr_t);
@ -1214,6 +1217,7 @@ void iFpi(x64emu_t *emu, uintptr_t fcn) { iFpi_t fn = (iFpi_t)fcn; R_RAX=fn((voi
void iFpI(x64emu_t *emu, uintptr_t fcn) { iFpI_t fn = (iFpI_t)fcn; R_RAX=fn((void*)R_RDI, (int64_t)R_RSI); }
void iFpC(x64emu_t *emu, uintptr_t fcn) { iFpC_t fn = (iFpC_t)fcn; R_RAX=fn((void*)R_RDI, (uint8_t)R_RSI); }
void iFpu(x64emu_t *emu, uintptr_t fcn) { iFpu_t fn = (iFpu_t)fcn; R_RAX=fn((void*)R_RDI, (uint32_t)R_RSI); }
void iFpU(x64emu_t *emu, uintptr_t fcn) { iFpU_t fn = (iFpU_t)fcn; R_RAX=fn((void*)R_RDI, (uint64_t)R_RSI); }
void iFpf(x64emu_t *emu, uintptr_t fcn) { iFpf_t fn = (iFpf_t)fcn; R_RAX=fn((void*)R_RDI, emu->xmm[0].f[0]); }
void iFpd(x64emu_t *emu, uintptr_t fcn) { iFpd_t fn = (iFpd_t)fcn; R_RAX=fn((void*)R_RDI, emu->xmm[0].d[0]); }
void iFpl(x64emu_t *emu, uintptr_t fcn) { iFpl_t fn = (iFpl_t)fcn; R_RAX=fn((void*)R_RDI, (intptr_t)R_RSI); }
@ -1362,6 +1366,7 @@ void iFpuu(x64emu_t *emu, uintptr_t fcn) { iFpuu_t fn = (iFpuu_t)fcn; R_RAX=fn((
void iFpuU(x64emu_t *emu, uintptr_t fcn) { iFpuU_t fn = (iFpuU_t)fcn; R_RAX=fn((void*)R_RDI, (uint32_t)R_RSI, (uint64_t)R_RDX); }
void iFpuL(x64emu_t *emu, uintptr_t fcn) { iFpuL_t fn = (iFpuL_t)fcn; R_RAX=fn((void*)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX); }
void iFpup(x64emu_t *emu, uintptr_t fcn) { iFpup_t fn = (iFpup_t)fcn; R_RAX=fn((void*)R_RDI, (uint32_t)R_RSI, (void*)R_RDX); }
void iFpUU(x64emu_t *emu, uintptr_t fcn) { iFpUU_t fn = (iFpUU_t)fcn; R_RAX=fn((void*)R_RDI, (uint64_t)R_RSI, (uint64_t)R_RDX); }
void iFpfu(x64emu_t *emu, uintptr_t fcn) { iFpfu_t fn = (iFpfu_t)fcn; R_RAX=fn((void*)R_RDI, emu->xmm[0].f[0], (uint32_t)R_RSI); }
void iFpff(x64emu_t *emu, uintptr_t fcn) { iFpff_t fn = (iFpff_t)fcn; R_RAX=fn((void*)R_RDI, emu->xmm[0].f[0], emu->xmm[1].f[0]); }
void iFpli(x64emu_t *emu, uintptr_t fcn) { iFpli_t fn = (iFpli_t)fcn; R_RAX=fn((void*)R_RDI, (intptr_t)R_RSI, (int32_t)R_RDX); }
@ -1441,6 +1446,7 @@ void pFpiu(x64emu_t *emu, uintptr_t fcn) { pFpiu_t fn = (pFpiu_t)fcn; R_RAX=(uin
void pFpiL(x64emu_t *emu, uintptr_t fcn) { pFpiL_t fn = (pFpiL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int32_t)R_RSI, (uintptr_t)R_RDX); }
void pFpip(x64emu_t *emu, uintptr_t fcn) { pFpip_t fn = (pFpip_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (int32_t)R_RSI, (void*)R_RDX); }
void pFpCC(x64emu_t *emu, uintptr_t fcn) { pFpCC_t fn = (pFpCC_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint8_t)R_RDX); }
void pFpCu(x64emu_t *emu, uintptr_t fcn) { pFpCu_t fn = (pFpCu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint8_t)R_RSI, (uint32_t)R_RDX); }
void pFpui(x64emu_t *emu, uintptr_t fcn) { pFpui_t fn = (pFpui_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (int32_t)R_RDX); }
void pFpuu(x64emu_t *emu, uintptr_t fcn) { pFpuu_t fn = (pFpuu_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uint32_t)R_RDX); }
void pFpuL(x64emu_t *emu, uintptr_t fcn) { pFpuL_t fn = (pFpuL_t)fcn; R_RAX=(uintptr_t)fn((void*)R_RDI, (uint32_t)R_RSI, (uintptr_t)R_RDX); }

View File

@ -134,6 +134,7 @@ void iFpi(x64emu_t *emu, uintptr_t fnc);
void iFpI(x64emu_t *emu, uintptr_t fnc);
void iFpC(x64emu_t *emu, uintptr_t fnc);
void iFpu(x64emu_t *emu, uintptr_t fnc);
void iFpU(x64emu_t *emu, uintptr_t fnc);
void iFpf(x64emu_t *emu, uintptr_t fnc);
void iFpd(x64emu_t *emu, uintptr_t fnc);
void iFpl(x64emu_t *emu, uintptr_t fnc);
@ -282,6 +283,7 @@ void iFpuu(x64emu_t *emu, uintptr_t fnc);
void iFpuU(x64emu_t *emu, uintptr_t fnc);
void iFpuL(x64emu_t *emu, uintptr_t fnc);
void iFpup(x64emu_t *emu, uintptr_t fnc);
void iFpUU(x64emu_t *emu, uintptr_t fnc);
void iFpfu(x64emu_t *emu, uintptr_t fnc);
void iFpff(x64emu_t *emu, uintptr_t fnc);
void iFpli(x64emu_t *emu, uintptr_t fnc);
@ -361,6 +363,7 @@ void pFpiu(x64emu_t *emu, uintptr_t fnc);
void pFpiL(x64emu_t *emu, uintptr_t fnc);
void pFpip(x64emu_t *emu, uintptr_t fnc);
void pFpCC(x64emu_t *emu, uintptr_t fnc);
void pFpCu(x64emu_t *emu, uintptr_t fnc);
void pFpui(x64emu_t *emu, uintptr_t fnc);
void pFpuu(x64emu_t *emu, uintptr_t fnc);
void pFpuL(x64emu_t *emu, uintptr_t fnc);

20
src/wrapped/wrappedudev0.c Executable file
View File

@ -0,0 +1,20 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define _GNU_SOURCE /* See feature_test_macros(7) */
#include <dlfcn.h>
#include "wrappedlibs.h"
#include "wrapper.h"
#include "bridge.h"
#include "librarian/library_private.h"
#include "x64emu.h"
const char* udev0Name = "libudev.so.0";
#define LIBNAME udev0
// fallback to 1 version... Not sure if really correct (probably not)
#define ALTNAME "libudev.so.1"
#include "wrappedlib_init.h"

View File

@ -0,0 +1,82 @@
#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA))
#error Meh....
#endif
GO(udev_device_ref, pFp)
GO(udev_device_unref, vFp)
GO(udev_device_get_udev, pFp)
GO(udev_device_new_from_syspath, pFpp)
GO(udev_device_new_from_devnum, pFpCu)
GO(udev_device_new_from_subsystem_sysname, pFppp)
GO(udev_device_new_from_environment, pFp)
GO(udev_device_get_parent, pFp)
GO(udev_device_get_parent_with_subsystem_devtype, pFppp)
GO(udev_device_get_devpath, pFp)
GO(udev_device_get_subsystem, pFp)
GO(udev_device_get_devtype, pFp)
GO(udev_device_get_syspath, pFp)
GO(udev_device_get_sysname, pFp)
GO(udev_device_get_sysnum, pFp)
GO(udev_device_get_devnode, pFp)
GO(udev_device_get_is_initialized, iFp)
GO(udev_device_get_devlinks_list_entry, pFp)
GO(udev_device_get_properties_list_entry, pFp)
GO(udev_device_get_tags_list_entry, pFp)
GO(udev_device_get_property_value, pFpp)
GO(udev_device_get_driver, pFp)
GO(udev_device_get_devnum, uFp)
GO(udev_device_get_action, pFp)
GO(udev_device_get_sysattr_value, pFpp)
GO(udev_device_get_sysattr_list_entry, pFp)
GO(dev_device_get_seqnum, UFp)
GO(dev_device_get_usec_since_initialized, UFp)
GO(udev_device_has_tag, iFpp)
GO(udev_enumerate_ref, pFp)
GO(udev_enumerate_unref, vFp)
GO(udev_enumerate_get_udev, pFp)
GO(udev_enumerate_new, pFp)
GO(udev_enumerate_add_match_subsystem, iFpp)
GO(udev_enumerate_add_nomatch_subsystem, iFpp)
GO(udev_enumerate_add_match_sysattr, iFppp)
GO(udev_enumerate_add_nomatch_sysattr, iFppp)
GO(udev_enumerate_add_match_property, iFppp)
GO(udev_enumerate_add_match_tag, iFpp)
GO(udev_enumerate_add_match_parent, iFpp)
GO(udev_enumerate_add_match_is_initialized, iFp)
GO(udev_enumerate_add_match_sysname, iFpp)
GO(udev_enumerate_add_syspath, iFpp)
GO(udev_enumerate_scan_devices, iFp)
GO(udev_enumerate_scan_subsystems, iFp)
GO(udev_enumerate_get_list_entry, pFp)
GO(udev_list_entry_get_next, pFp)
GO(udev_list_entry_get_by_name, pFpp)
GO(udev_list_entry_get_name, pFp)
GO(udev_list_entry_get_value, pFp)
GO(udev_monitor_ref, pFp)
GO(udev_monitor_unref, pFp)
GO(udev_monitor_get_udev, pFp)
GO(udev_monitor_new_from_netlink, pFpp)
GO(udev_monitor_new_from_socket, pFpp)
GO(udev_monitor_enable_receiving, iFp)
GO(udev_monitor_set_receive_buffer_size, iFpi)
GO(udev_monitor_get_fd, iFp)
GO(udev_monitor_receive_device, pFp)
GO(udev_monitor_filter_add_match_subsystem_devtype, iFppp)
GO(udev_monitor_filter_add_match_tag, iFpp)
GO(udev_monitor_filter_update, iFp)
GO(udev_monitor_filter_remove, iFp)
GO(udev_new, pFv)
GO(udev_ref, pFp)
GO(udev_unref, pFp)
GO(udev_queue_ref, pFp)
GO(udev_queue_unref, vFp)
GO(udev_queue_get_udev, pFp)
GO(udev_queue_new, pFp)
GO(udev_queue_get_kernel_seqnum, UFp)
GO(udev_queue_get_udev_seqnum, UFp)
GO(udev_queue_get_udev_is_active, iFp)
GO(udev_queue_get_queue_is_empty, iFp)
GO(udev_queue_get_seqnum_is_finished, iFpU)
GO(udev_queue_get_seqnum_sequence_is_finished, iFpUU)
GO(udev_queue_get_queued_list_entry, pFp)
GO(udev_queue_get_failed_list_entry, pFp)

20
src/wrapped/wrappedudev1.c Executable file
View File

@ -0,0 +1,20 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define _GNU_SOURCE /* See feature_test_macros(7) */
#include <dlfcn.h>
#include "wrappedlibs.h"
#include "wrapper.h"
#include "bridge.h"
#include "librarian/library_private.h"
#include "x64emu.h"
const char* udev1Name = "libudev.so.1";
#define LIBNAME udev1
// fallback to 0 version... Not sure if really correct (probably not)
#define ALTNAME "libudev.so.0"
#include "wrappedlib_init.h"

View File

@ -0,0 +1,82 @@
#if !(defined(GO) && defined(GOM) && defined(GO2) && defined(DATA))
#error Meh....
#endif
GO(udev_device_ref, pFp)
GO(udev_device_unref, pFp)
GO(udev_device_get_udev, pFp)
GO(udev_device_new_from_syspath, pFpp)
GO(udev_device_new_from_devnum, pFpCu)
GO(udev_device_new_from_subsystem_sysname, pFppp)
GO(udev_device_new_from_environment, pFp)
GO(udev_device_get_parent, pFp)
GO(udev_device_get_parent_with_subsystem_devtype, pFppp)
GO(udev_device_get_devpath, pFp)
GO(udev_device_get_subsystem, pFp)
GO(udev_device_get_devtype, pFp)
GO(udev_device_get_syspath, pFp)
GO(udev_device_get_sysname, pFp)
GO(udev_device_get_sysnum, pFp)
GO(udev_device_get_devnode, pFp)
GO(udev_device_get_is_initialized, iFp)
GO(udev_device_get_devlinks_list_entry, pFp)
GO(udev_device_get_properties_list_entry, pFp)
GO(udev_device_get_tags_list_entry, pFp)
GO(udev_device_get_property_value, pFpp)
GO(udev_device_get_driver, pFp)
GO(udev_device_get_devnum, uFp)
GO(udev_device_get_action, pFp)
GO(udev_device_get_sysattr_value, pFpp)
GO(udev_device_get_sysattr_list_entry, pFp)
GO(dev_device_get_seqnum, UFp)
GO(dev_device_get_usec_since_initialized, UFp)
GO(udev_device_has_tag, iFpp)
GO(udev_enumerate_ref, pFp)
GO(udev_enumerate_unref, pFp)
GO(udev_enumerate_get_udev, pFp)
GO(udev_enumerate_new, pFp)
GO(udev_enumerate_add_match_subsystem, iFpp)
GO(udev_enumerate_add_nomatch_subsystem, iFpp)
GO(udev_enumerate_add_match_sysattr, iFppp)
GO(udev_enumerate_add_nomatch_sysattr, iFppp)
GO(udev_enumerate_add_match_property, iFppp)
GO(udev_enumerate_add_match_tag, iFpp)
GO(udev_enumerate_add_match_parent, iFpp)
GO(udev_enumerate_add_match_is_initialized, iFp)
GO(udev_enumerate_add_match_sysname, iFpp)
GO(udev_enumerate_add_syspath, iFpp)
GO(udev_enumerate_scan_devices, iFp)
GO(udev_enumerate_scan_subsystems, iFp)
GO(udev_enumerate_get_list_entry, pFp)
GO(udev_list_entry_get_next, pFp)
GO(udev_list_entry_get_by_name, pFpp)
GO(udev_list_entry_get_name, pFp)
GO(udev_list_entry_get_value, pFp)
GO(udev_monitor_ref, pFp)
GO(udev_monitor_unref, pFp)
GO(udev_monitor_get_udev, pFp)
GO(udev_monitor_new_from_netlink, pFpp)
GO(udev_monitor_new_from_socket, pFpp)
GO(udev_monitor_enable_receiving, iFp)
GO(udev_monitor_set_receive_buffer_size, iFpi)
GO(udev_monitor_get_fd, iFp)
GO(udev_monitor_receive_device, pFp)
GO(udev_monitor_filter_add_match_subsystem_devtype, iFppp)
GO(udev_monitor_filter_add_match_tag, iFpp)
GO(udev_monitor_filter_update, iFp)
GO(udev_monitor_filter_remove, iFp)
GO(udev_new, pFv)
GO(udev_ref, pFp)
GO(udev_unref, pFp)
GO(udev_queue_ref, pFp)
GO(udev_queue_unref, vFp)
GO(udev_queue_get_udev, pFp)
GO(udev_queue_new, pFp)
GO(udev_queue_get_kernel_seqnum, UFp)
GO(udev_queue_get_udev_seqnum, UFp)
GO(udev_queue_get_udev_is_active, iFp)
GO(udev_queue_get_queue_is_empty, iFp)
GO(udev_queue_get_seqnum_is_finished, iFpU)
GO(udev_queue_get_seqnum_sequence_is_finished, iFpUU)
GO(udev_queue_get_queued_list_entry, pFp)
GO(udev_queue_get_failed_list_entry, pFp)