From c7693d4ecd7950ff7696aba13aa8e44a16c24f4e Mon Sep 17 00:00:00 2001 From: longpanda Date: Wed, 24 Jan 2024 12:09:29 +0800 Subject: [PATCH] Fix VTOY_LINUX_REMOUNT option does not work with latest linux kernel version. (#2661 #2674) --- DMPATCH/dmpatch.c | 185 ++++++++++++++++++-- IMG/cpio/ventoy/hook/ventoy-hook-lib.sh | 25 ++- IMG/cpio_x86/ventoy/tool/dm_patch_64.ko | Bin 8624 -> 12728 bytes IMG/cpio_x86/ventoy/tool/dm_patch_ibt_64.ko | Bin 9664 -> 13568 bytes VtoyTool/vtoykmod.c | 66 +++++-- VtoyTool/vtoyksym.c | 7 +- VtoyTool/vtoytool/00/vtoytool_32 | Bin 78904 -> 78916 bytes VtoyTool/vtoytool/00/vtoytool_64 | Bin 78832 -> 78840 bytes VtoyTool/vtoytool/00/vtoytool_aa64 | Bin 166112 -> 166112 bytes VtoyTool/vtoytool/00/vtoytool_m64e | Bin 170176 -> 172480 bytes 10 files changed, 247 insertions(+), 36 deletions(-) diff --git a/DMPATCH/dmpatch.c b/DMPATCH/dmpatch.c index 2e5d1a98..e4ed6f9a 100644 --- a/DMPATCH/dmpatch.c +++ b/DMPATCH/dmpatch.c @@ -53,6 +53,9 @@ typedef struct ko_param unsigned long sym_put_size; unsigned long kv_major; unsigned long ibt; + unsigned long kv_minor; + unsigned long blkdev_get_addr; + unsigned long blkdev_put_addr; unsigned long padding[1]; }ko_param; @@ -150,10 +153,11 @@ static volatile ko_param g_ko_param = #define vdebug(fmt, args...) if(kprintf) kprintf(KERN_ERR fmt, ##args) +static unsigned int g_claim_ptr = 0; static unsigned char *g_get_patch[MAX_PATCH] = { NULL }; static unsigned char *g_put_patch[MAX_PATCH] = { NULL }; -static void notrace dmpatch_restore_code(unsigned char *opCode) +static void notrace dmpatch_restore_code(int bytes, unsigned char *opCode, unsigned int code) { unsigned long align; @@ -161,7 +165,14 @@ static void notrace dmpatch_restore_code(unsigned char *opCode) { align = (unsigned long)opCode / g_ko_param.pgsize * g_ko_param.pgsize; set_mem_rw(align, 1); - *opCode = 0x80; + if (bytes == 1) + { + *opCode = (unsigned char)code; + } + else + { + *(unsigned int *)opCode = code; + } set_mem_ro(align, 1); } } @@ -235,6 +246,121 @@ static int notrace dmpatch_replace_code return 0; } +static unsigned long dmpatch_find_call_offset(unsigned long addr, unsigned long size, unsigned long func) +{ + unsigned long i = 0; + unsigned long dest; + unsigned char *opCode = NULL; + unsigned char aucOffset[8] = { 0, 0, 0, 0, 0xFF, 0xFF, 0xFF, 0xFF }; + + opCode = (unsigned char *)addr; + + for (i = 0; i + 4 < size; i++) + { + if (opCode[i] == 0xE8) + { + aucOffset[0] = opCode[i + 1]; + aucOffset[1] = opCode[i + 2]; + aucOffset[2] = opCode[i + 3]; + aucOffset[3] = opCode[i + 4]; + + dest = addr + i + 5 + *(unsigned long *)aucOffset; + if (dest == func) + { + return i; + } + } + } + + return 0; +} + +static unsigned int dmpatch_patch_claim_ptr(void) +{ + unsigned long i = 0; + unsigned long t = 0; + unsigned long offset1; + unsigned long offset2; + unsigned long align; + unsigned char *opCode = NULL; + + vdebug("Get addr: 0x%lx %lu 0x%lx\n", g_ko_param.sym_get_addr, g_ko_param.sym_get_size, g_ko_param.blkdev_get_addr); + vdebug("Put addr: 0x%lx %lu 0x%lx\n", g_ko_param.sym_put_addr, g_ko_param.sym_put_size, g_ko_param.blkdev_put_addr); + + opCode = (unsigned char *)g_ko_param.sym_get_addr; + for (i = 0; i < 4; i++) + { + vdebug("%02X %02X %02X %02X %02X %02X %02X %02X %02X %02X %02X %02X %02X %02X %02X %02X\n", + opCode[i + 0], opCode[i + 1], opCode[i + 2], opCode[i + 3], + opCode[i + 4], opCode[i + 5], opCode[i + 6], opCode[i + 7], + opCode[i + 8], opCode[i + 9], opCode[i + 10], opCode[i + 11], + opCode[i + 12], opCode[i + 13], opCode[i + 14], opCode[i + 15]); + } + + offset1 = dmpatch_find_call_offset(g_ko_param.sym_get_addr, g_ko_param.sym_get_size, g_ko_param.blkdev_get_addr); + offset2 = dmpatch_find_call_offset(g_ko_param.sym_put_addr, g_ko_param.sym_put_size, g_ko_param.blkdev_put_addr); + if (offset1 == 0 || offset2 == 0) + { + vdebug("call blkdev_get or blkdev_put Not found, %lu %lu\n", offset1, offset2); + return 1; + } + vdebug("call addr1:0x%lx call addr2:0x%lx\n", + g_ko_param.sym_get_addr + offset1, + g_ko_param.sym_put_addr + offset2); + + opCode = (unsigned char *)g_ko_param.sym_get_addr; + for (i = offset1 - 1, t = 0; (i > 0) && (t < 24); i--, t++) + { + /* rdx */ + if (opCode[i] == 0x48 && opCode[i + 1] == 0xc7 && opCode[i + 2] == 0xc2) + { + g_claim_ptr = *(unsigned int *)(opCode + i + 3); + g_get_patch[0] = opCode + i + 3; + vdebug("claim_ptr(%08X) found at get addr 0x%lx\n", g_claim_ptr, g_ko_param.sym_get_addr + i + 3); + break; + } + } + + if (g_claim_ptr == 0) + { + vdebug("Claim_ptr not found in get\n"); + return 1; + } + + opCode = (unsigned char *)g_ko_param.sym_put_addr; + for (i = offset2 - 1, t = 0; (i > 0) && (t < 24); i--, t++) + { + /* rsi */ + if (opCode[i] == 0x48 && opCode[i + 1] == 0xc7 && opCode[i + 2] == 0xc6) + { + if (*(unsigned int *)(opCode + i + 3) == g_claim_ptr) + { + vdebug("claim_ptr found at put addr 0x%lx\n", g_ko_param.sym_put_addr + i + 3); + g_put_patch[0] = opCode + i + 3; + break; + } + } + } + + if (g_put_patch[0] == 0) + { + vdebug("Claim_ptr not found in put\n"); + return 1; + } + + align = (unsigned long)g_get_patch[0] / g_ko_param.pgsize * g_ko_param.pgsize; + set_mem_rw(align, 1); + *(unsigned int *)(g_get_patch[0]) = 0; + set_mem_ro(align, 1); + + align = (unsigned long)g_put_patch[0] / g_ko_param.pgsize * g_ko_param.pgsize; + set_mem_rw(align, 1); + *(unsigned int *)(g_put_patch[0]) = 0; + set_mem_ro(align, 1); + + return 0; +} + #ifdef VTOY_IBT static __always_inline unsigned long long dmpatch_rdmsr(unsigned int msr) { @@ -297,7 +423,8 @@ static int notrace dmpatch_init(void) kprintf = (printk_pf)(g_ko_param.printk_addr); - vdebug("dmpatch_init start pagesize=%lu ...\n", g_ko_param.pgsize); + vdebug("dmpatch_init start pagesize=%lu kernel=%lu.%lu ...\n", + g_ko_param.pgsize, g_ko_param.kv_major, g_ko_param.kv_minor); if (g_ko_param.struct_size != sizeof(ko_param)) { @@ -316,20 +443,27 @@ static int notrace dmpatch_init(void) reg_kprobe = (kprobe_reg_pf)g_ko_param.reg_kprobe_addr; unreg_kprobe = (kprobe_unreg_pf)g_ko_param.unreg_kprobe_addr; - r = dmpatch_replace_code(1, g_ko_param.sym_get_addr, g_ko_param.sym_get_size, 2, "dm_get_table_device", g_get_patch); - if (r && g_ko_param.kv_major >= 5) + if (g_ko_param.kv_major > 6 || (g_ko_param.kv_major == 6 && g_ko_param.kv_minor >= 5)) { - vdebug("new2 patch dm_get_table_device...\n"); - r = dmpatch_replace_code(2, g_ko_param.sym_get_addr, g_ko_param.sym_get_size, 1, "dm_get_table_device", g_get_patch); + vdebug("new interface patch dm_get_table_device...\n"); + r = dmpatch_patch_claim_ptr(); + } + else + { + r = dmpatch_replace_code(1, g_ko_param.sym_get_addr, g_ko_param.sym_get_size, 2, "dm_get_table_device", g_get_patch); + if (r && g_ko_param.kv_major >= 5) + { + vdebug("new2 patch dm_get_table_device...\n"); + r = dmpatch_replace_code(2, g_ko_param.sym_get_addr, g_ko_param.sym_get_size, 1, "dm_get_table_device", g_get_patch); + } + + if (r && g_ko_param.kv_major >= 5) + { + vdebug("new3 patch dm_get_table_device...\n"); + r = dmpatch_replace_code(3, g_ko_param.sym_get_addr, g_ko_param.sym_get_size, 1, "dm_get_table_device", g_get_patch); + } } - if (r && g_ko_param.kv_major >= 5) - { - vdebug("new3 patch dm_get_table_device...\n"); - r = dmpatch_replace_code(3, g_ko_param.sym_get_addr, g_ko_param.sym_get_size, 1, "dm_get_table_device", g_get_patch); - } - - if (r) { rc = -EINVAL; @@ -337,7 +471,14 @@ static int notrace dmpatch_init(void) } vdebug("patch dm_get_table_device success\n"); - r = dmpatch_replace_code(1, g_ko_param.sym_put_addr, g_ko_param.sym_put_size, 1, "dm_put_table_device", g_put_patch); + if (g_ko_param.kv_major >= 6 && g_ko_param.kv_minor >= 5) + { + r = 0; + } + else + { + r = dmpatch_replace_code(1, g_ko_param.sym_put_addr, g_ko_param.sym_put_size, 1, "dm_put_table_device", g_put_patch); + } if (r) { rc = -EINVAL; @@ -369,10 +510,18 @@ static void notrace dmpatch_exit(void) msr = dmpatch_ibt_save(); } - for (i = 0; i < MAX_PATCH; i++) + if (g_claim_ptr) { - dmpatch_restore_code(g_get_patch[i]); - dmpatch_restore_code(g_put_patch[i]); + dmpatch_restore_code(4, g_get_patch[0], g_claim_ptr); + dmpatch_restore_code(4, g_put_patch[0], g_claim_ptr); + } + else + { + for (i = 0; i < MAX_PATCH; i++) + { + dmpatch_restore_code(1, g_get_patch[i], 0x80); + dmpatch_restore_code(1, g_put_patch[i], 0x80); + } } vdebug("dmpatch_exit success\n"); diff --git a/IMG/cpio/ventoy/hook/ventoy-hook-lib.sh b/IMG/cpio/ventoy/hook/ventoy-hook-lib.sh index 62c29967..b77934cb 100644 --- a/IMG/cpio/ventoy/hook/ventoy-hook-lib.sh +++ b/IMG/cpio/ventoy/hook/ventoy-hook-lib.sh @@ -344,6 +344,15 @@ ventoy_dm_patch() { get_addr=$(echo $vtLine | $AWK '{print $1}') get_size=$(echo $vtLine | $AWK '{print $2}') + vtLine=$($VTOY_PATH/tool/vtoyksym blkdev_get_by_dev $VTOY_PATH/kallsyms) + vtlog "get blkdev_get_by_dev address $vtLine" + blkdev_get_addr=$(echo $vtLine | $AWK '{print $1}') + + vtLine=$($VTOY_PATH/tool/vtoyksym blkdev_put $VTOY_PATH/kallsyms) + vtlog "get blkdev_put address $vtLine" + blkdev_put_addr=$(echo $vtLine | $AWK '{print $1}') + + if $GREP -m1 -q 'close_table_device.isra' $VTOY_PATH/kallsyms; then vtLine=$($VTOY_PATH/tool/vtoyksym close_table_device.isra $VTOY_PATH/kallsyms) vtlog "get close_table_device.isra address $vtLine" @@ -383,6 +392,7 @@ ventoy_dm_patch() { vtlog get_addr=$get_addr get_size=$get_size vtlog put_addr=$put_addr put_size=$put_size + vtlog blkdev_get_addr=$blkdev_get_addr blkdev_put_addr=$blkdev_put_addr vtlog kprobe_reg_addr=$kprobe_reg_addr kprobe_unreg_addr=$kprobe_unreg_addr vtlog ro_addr=$ro_addr rw_addr=$rw_addr printk_addr=$printk_addr @@ -397,6 +407,8 @@ ventoy_dm_patch() { vtKv=$($BUSYBOX_PATH/uname -r) + vtKVMajor=$(echo $vtKv | $AWK -F. '{print $1}') + vtKVMinor=$(echo $vtKv | $AWK -F. '{print $2}') if [ ! -d /lib/modules/$vtKv ]; then vtlog "No modules directory found" @@ -437,13 +449,18 @@ ventoy_dm_patch() { #step1: modify vermagic/mod crc/relocation - vtlog "$VTOY_PATH/tool/vtoykmod -u $VTOY_PATH/tool/$vtKoName $VTOY_PATH/$vtModName $vtDebug" - $VTOY_PATH/tool/vtoykmod -u $VTOY_PATH/tool/$vtKoName $VTOY_PATH/$vtModName $vtDebug >>$VTLOG 2>&1 + vtlog "$VTOY_PATH/tool/vtoykmod -u $vtKVMajor $vtKVMinor $VTOY_PATH/tool/$vtKoName $VTOY_PATH/$vtModName $vtDebug" + $VTOY_PATH/tool/vtoykmod -u $vtKVMajor $vtKVMinor $VTOY_PATH/tool/$vtKoName $VTOY_PATH/$vtModName $vtDebug >>$VTLOG 2>&1 #step2: fill parameters vtPgsize=$($VTOY_PATH/tool/vtoyksym -p) - vtlog "$VTOY_PATH/tool/vtoykmod -f $VTOY_PATH/tool/$vtKoName $vtPgsize 0x$printk_addr 0x$ro_addr 0x$rw_addr $get_addr $get_size $put_addr $put_size 0x$kprobe_reg_addr 0x$kprobe_unreg_addr $vtKv $vtIBT $vtDebug" - $VTOY_PATH/tool/vtoykmod -f $VTOY_PATH/tool/$vtKoName $vtPgsize 0x$printk_addr 0x$ro_addr 0x$rw_addr $get_addr $get_size $put_addr $put_size 0x$kprobe_reg_addr 0x$kprobe_unreg_addr $vtKv $vtIBT $vtDebug >>$VTLOG 2>&1 + + vtPrams="$VTOY_PATH/tool/$vtKoName $vtPgsize 0x$printk_addr 0x$ro_addr 0x$rw_addr $get_addr $get_size $put_addr $put_size 0x$kprobe_reg_addr 0x$kprobe_unreg_addr $vtKVMajor $vtIBT $vtKVMinor $blkdev_get_addr $blkdev_put_addr $vtDebug" + + + vtlog "$VTOY_PATH/tool/vtoykmod -f $vtPrams" + $VTOY_PATH/tool/vtoykmod -f $vtPrams >>$VTLOG 2>&1 + vtlog "insmod $VTOY_PATH/tool/$vtKoName" $BUSYBOX_PATH/insmod $VTOY_PATH/tool/$vtKoName >>$VTLOG 2>&1 diff --git a/IMG/cpio_x86/ventoy/tool/dm_patch_64.ko b/IMG/cpio_x86/ventoy/tool/dm_patch_64.ko index dc26bf9d5c789395ed8563c9284d42a979b72407..0be14b37600a325e13ce62a1ebee12389153f125 100644 GIT binary patch literal 12728 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 azzy2h0s{t2S*CjaMXLWXKTP!=^#2zL_8QXw diff --git a/IMG/cpio_x86/ventoy/tool/dm_patch_ibt_64.ko b/IMG/cpio_x86/ventoy/tool/dm_patch_ibt_64.ko index a73119ba8f84e8c7dcd5328e05dbaf5ed241453c..714db3437188c17a6c26037219d48895aacf7d55 100644 GIT binary patch literal 13568 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 LKY-4prrQ4ppW4Nk diff --git a/VtoyTool/vtoykmod.c b/VtoyTool/vtoykmod.c index 5cc42a52..0601614f 100644 --- a/VtoyTool/vtoykmod.c +++ b/VtoyTool/vtoykmod.c @@ -188,6 +188,9 @@ typedef struct ko_param unsigned long sym_put_size; unsigned long kv_major; unsigned long ibt; + unsigned long kv_minor; + unsigned long blkdev_get_addr; + unsigned long blkdev_put_addr; unsigned long padding[1]; }ko_param; @@ -243,7 +246,7 @@ static int vtoykmod_read_file(char *name, char **buf) return size; } -static int vtoykmod_find_section64(char *buf, char *section, int *offset, int *len) +static int vtoykmod_find_section64(char *buf, char *section, int *offset, int *len, Elf64_Shdr **shdr) { uint16_t i; int cmplen; @@ -265,6 +268,10 @@ static int vtoykmod_find_section64(char *buf, char *section, int *offset, int *l { *offset = (int)(sec[i].sh_offset); *len = (int)(sec[i].sh_size); + if (shdr) + { + *shdr = sec + i; + } return 0; } } @@ -272,7 +279,7 @@ static int vtoykmod_find_section64(char *buf, char *section, int *offset, int *l return 1; } -static int vtoykmod_find_section32(char *buf, char *section, int *offset, int *len) +static int vtoykmod_find_section32(char *buf, char *section, int *offset, int *len, Elf32_Shdr **shdr) { uint16_t i; int cmplen; @@ -294,6 +301,10 @@ static int vtoykmod_find_section32(char *buf, char *section, int *offset, int *l { *offset = (int)(sec[i].sh_offset); *len = (int)(sec[i].sh_size); + if (shdr) + { + *shdr = sec + i; + } return 0; } } @@ -411,7 +422,7 @@ static int vtoykmod_update_vermagic(char *oldbuf, int oldsize, char *newbuf, int return 0; } -int vtoykmod_update(char *oldko, char *newko) +int vtoykmod_update(int kvMajor, int kvMinor, char *oldko, char *newko) { int rc = 0; int modver = 0; @@ -419,6 +430,7 @@ int vtoykmod_update(char *oldko, char *newko) int newoff, newlen; int oldsize, newsize; char *newbuf, *oldbuf; + Elf64_Shdr *sec = NULL; oldsize = vtoykmod_read_file(oldko, &oldbuf); newsize = vtoykmod_read_file(newko, &newbuf); @@ -435,13 +447,13 @@ int vtoykmod_update(char *oldko, char *newko) { if (oldbuf[EI_CLASS] == ELFCLASS64) { - rc = vtoykmod_find_section64(oldbuf, "__versions", &oldoff, &oldlen); - rc += vtoykmod_find_section64(newbuf, "__versions", &newoff, &newlen); + rc = vtoykmod_find_section64(oldbuf, "__versions", &oldoff, &oldlen, NULL); + rc += vtoykmod_find_section64(newbuf, "__versions", &newoff, &newlen, NULL); } else { - rc = vtoykmod_find_section32(oldbuf, "__versions", &oldoff, &oldlen); - rc += vtoykmod_find_section32(newbuf, "__versions", &newoff, &newlen); + rc = vtoykmod_find_section32(oldbuf, "__versions", &oldoff, &oldlen, NULL); + rc += vtoykmod_find_section32(newbuf, "__versions", &newoff, &newlen, NULL); } if (rc == 0) @@ -459,8 +471,8 @@ int vtoykmod_update(char *oldko, char *newko) { Elf64_Rela *oldRela, *newRela; - rc = vtoykmod_find_section64(oldbuf, ".rela.gnu.linkonce.this_module", &oldoff, &oldlen); - rc += vtoykmod_find_section64(newbuf, ".rela.gnu.linkonce.this_module", &newoff, &newlen); + rc = vtoykmod_find_section64(oldbuf, ".rela.gnu.linkonce.this_module", &oldoff, &oldlen, NULL); + rc += vtoykmod_find_section64(newbuf, ".rela.gnu.linkonce.this_module", &newoff, &newlen, NULL); if (rc == 0) { oldRela = (Elf64_Rela *)(oldbuf + oldoff); @@ -478,13 +490,31 @@ int vtoykmod_update(char *oldko, char *newko) { debug("section .rela.gnu.linkonce.this_module not found\n"); } + + if (kvMajor > 6 || (kvMajor == 6 && kvMinor >= 3)) + { + rc = vtoykmod_find_section64(oldbuf, ".gnu.linkonce.this_module", &oldoff, &oldlen, &sec); + rc += vtoykmod_find_section64(newbuf, ".gnu.linkonce.this_module", &newoff, &newlen, NULL); + if (rc == 0) + { + debug("section .gnu.linkonce.this_module change oldlen:0x%x to newlen:0x%x\n", oldlen, newlen); + if (sec) + { + sec->sh_size = newlen; + } + } + else + { + debug("section .gnu.linkonce.this_module not found\n"); + } + } } else { Elf32_Rel *oldRel, *newRel; - rc = vtoykmod_find_section32(oldbuf, ".rel.gnu.linkonce.this_module", &oldoff, &oldlen); - rc += vtoykmod_find_section32(newbuf, ".rel.gnu.linkonce.this_module", &newoff, &newlen); + rc = vtoykmod_find_section32(oldbuf, ".rel.gnu.linkonce.this_module", &oldoff, &oldlen, NULL); + rc += vtoykmod_find_section32(newbuf, ".rel.gnu.linkonce.this_module", &newoff, &newlen, NULL); if (rc == 0) { oldRel = (Elf32_Rel *)(oldbuf + oldoff); @@ -542,8 +572,11 @@ int vtoykmod_fill_param(char **argv) param->sym_put_size = strtoul(argv[8], NULL, 10); param->reg_kprobe_addr = strtoul(argv[9], NULL, 16); param->unreg_kprobe_addr = strtoul(argv[10], NULL, 16); - param->kv_major = (unsigned long)(argv[11][0] - '0'); + param->kv_major = strtoul(argv[11], NULL, 10); param->ibt = strtoul(argv[12], NULL, 16);; + param->kv_minor = strtoul(argv[13], NULL, 10); + param->blkdev_get_addr = strtoul(argv[14], NULL, 16); + param->blkdev_put_addr = strtoul(argv[15], NULL, 16); debug("pgsize=%lu (%s)\n", param->pgsize, argv[1]); debug("printk_addr=0x%lx (%s)\n", param->printk_addr, argv[2]); @@ -557,6 +590,9 @@ int vtoykmod_fill_param(char **argv) debug("unreg_kprobe_addr=0x%lx (%s)\n", param->unreg_kprobe_addr, argv[10]); debug("kv_major=%lu (%s)\n", param->kv_major, argv[11]); debug("ibt=0x%lx (%s)\n", param->ibt, argv[12]); + debug("kv_minor=%lu (%s)\n", param->kv_minor, argv[13]); + debug("blkdev_get_addr=0x%lx (%s)\n", param->blkdev_get_addr, argv[14]); + debug("blkdev_put_addr=0x%lx (%s)\n", param->blkdev_put_addr, argv[15]); break; } @@ -596,6 +632,8 @@ static int vtoykmod_check_ibt(void) int vtoykmod_main(int argc, char **argv) { int i; + int kvMajor = 0; + int kvMinor = 0; for (i = 0; i < argc; i++) { @@ -612,7 +650,9 @@ int vtoykmod_main(int argc, char **argv) } else if (argv[1][0] == '-' && argv[1][1] == 'u') { - return vtoykmod_update(argv[2], argv[3]); + kvMajor = (int)strtol(argv[2], NULL, 10); + kvMinor = (int)strtol(argv[3], NULL, 10); + return vtoykmod_update(kvMajor, kvMinor, argv[4], argv[5]); } else if (argv[1][0] == '-' && argv[1][1] == 'I') { diff --git a/VtoyTool/vtoyksym.c b/VtoyTool/vtoyksym.c index 187f54c4..e06290f3 100644 --- a/VtoyTool/vtoyksym.c +++ b/VtoyTool/vtoyksym.c @@ -21,6 +21,7 @@ #include #include #include +#include #include #include @@ -30,10 +31,12 @@ static int verbose = 0; int vtoyksym_main(int argc, char **argv) { int i; + int len = 0; unsigned long long addr1 = 0; unsigned long long addr2 = 0; char sym[256]; char line[1024]; + char *start = NULL; const char *name = NULL; FILE *fp; @@ -68,9 +71,11 @@ int vtoyksym_main(int argc, char **argv) snprintf(sym, sizeof(sym), " %s", argv[1]); debug("lookup for <%s>\n", sym); + len = (int)strlen(sym); while (fgets(line, sizeof(line), fp)) { - if (strstr(line, sym)) + start = strstr(line, sym); + if (start && (start > line) && isspace(*(start + len))) { addr1 = strtoull(line, NULL, 16); if (!fgets(line, sizeof(line), fp)) diff --git a/VtoyTool/vtoytool/00/vtoytool_32 b/VtoyTool/vtoytool/00/vtoytool_32 index cca95539aceca355b1670e02ff809aa15574014b..62d469b497b8cebdc6dbe091f0333460ddc38755 100644 GIT binary patch delta 20792 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%0A?iEf`prgB{~E5dzp3;; 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�L^4^BH6s`;oswT-XykUL{9Z_Orz#hpm5h2ARUX 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 diff --git a/VtoyTool/vtoytool/00/vtoytool_m64e b/VtoyTool/vtoytool/00/vtoytool_m64e index bac502a1961468a58660b77111d8b53ce215c93b..e18033862e53bb6d83061726900f1bde30544899 100644 GIT binary patch delta 31781 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%0DF@aj&td}cRXytQV%I#XY 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 E1FZz~`v3p{ delta 30991 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 e#a%8WkU8?42Ew01Nyx