From f202a5a4955f18111901969e87a0846c77234acb Mon Sep 17 00:00:00 2001 From: Andy Nguyen Date: Sun, 24 Oct 2021 22:57:03 +0200 Subject: [PATCH] Clean up payload. --- payload/Makefile | 4 ++-- payload/payload.c | 4 +++- payload/start.S | 3 +++ 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/payload/Makefile b/payload/Makefile index 5ec6377..cf23efe 100644 --- a/payload/Makefile +++ b/payload/Makefile @@ -4,13 +4,13 @@ OBJS = start.o payload.o CC = gcc AS = as OBJCOPY = objcopy -CFLAGS = -Os -fno-stack-protector -fpic -fpie +CFLAGS = -Os -fno-stack-protector LDFLAGS = -T linker.x -nostdlib -nostartfiles all: $(TARGET).bin %.bin: %.elf - $(OBJCOPY) -S -O binary $^ $@ + $(OBJCOPY) -S -j .text -j .data -j .rodata -j .bss -O binary $^ $@ $(TARGET).elf: $(OBJS) $(CC) $(CFLAGS) $^ -o $@ $(LDFLAGS) diff --git a/payload/payload.c b/payload/payload.c index afdefc7..f466f58 100644 --- a/payload/payload.c +++ b/payload/payload.c @@ -2,6 +2,8 @@ #include #include -int payload(int (* sceKernelDlsym)(int handle, const char *symbol, uintptr_t *address)) { +typedef int32_t SceKernelModule; + +int payload(int (* sceKernelDlsym)(SceKernelModule handle, const char *symbol, void **addrp)) { return 1337; } diff --git a/payload/start.S b/payload/start.S index 6a46dd9..04f9d40 100644 --- a/payload/start.S +++ b/payload/start.S @@ -1,2 +1,5 @@ +.text + +.global _start _start: jmp payload