--- - branch: MAIN date: Mon Jun 13 12:26:11 UTC 2016 files: - new: '1.2' old: '1.1' path: pkgsrc/devel/py-radare2/distinfo pathrev: pkgsrc/devel/py-radare2/distinfo@1.2 type: modified - new: '1.7' old: '1.6' path: pkgsrc/devel/radare2/Makefile pathrev: pkgsrc/devel/radare2/Makefile@1.7 type: modified - new: '1.4' old: '1.3' path: pkgsrc/devel/radare2/Makefile.common pathrev: pkgsrc/devel/radare2/Makefile.common@1.4 type: modified - new: '1.3' old: '1.2' path: pkgsrc/devel/radare2/PLIST pathrev: pkgsrc/devel/radare2/PLIST@1.3 type: modified - new: '1.5' old: '1.4' path: pkgsrc/devel/radare2/distinfo pathrev: pkgsrc/devel/radare2/distinfo@1.5 type: modified - new: '1.7' old: '1.6' path: pkgsrc/devel/radare2-valabind/Makefile pathrev: pkgsrc/devel/radare2-valabind/Makefile@1.7 type: modified - new: '1.4' old: '1.3' path: pkgsrc/devel/radare2-valabind/distinfo pathrev: pkgsrc/devel/radare2-valabind/distinfo@1.4 type: modified - new: '0' old: '1.1' path: pkgsrc/devel/radare2-valabind/patches/patch-valabind-cc pathrev: pkgsrc/devel/radare2-valabind/patches/patch-valabind-cc@0 type: deleted - new: '0' old: '1.1' path: pkgsrc/devel/radare2/patches/patch-libr_config.mk.tail pathrev: pkgsrc/devel/radare2/patches/patch-libr_config.mk.tail@0 type: deleted - new: '0' old: '1.1' path: pkgsrc/devel/radare2/patches/patch-shlr_gdb_Makefile pathrev: pkgsrc/devel/radare2/patches/patch-shlr_gdb_Makefile@0 type: deleted id: 20160613T122611Z.7d22a2bd08bb846193f422d393a37cba77c709d5 log: "Update radare2 packages to 0.10.3/0.10.0.\n\nChanges for 0.10.3 not found.\n\n0.10.2\n\n \ Add r2 -d and -R shortcuts to simplify loading rarun2 profiles and using remote debugging plugins\n Support for cryptography (blowfish, rc2, rc4, aes, xor, ror, rol)\n woE/woD\n rabin2 -E\n Adding wo*y commands using clipboard instead of [val]\n Better PE and ELF parsers\n New easter-egg!\n \ dyldcache extractor is working again\n Support for BOCHS\n Coredump support for iOS and OSX\n New fileformats, namely Python bytecode and Flash files\n Improved analysis and emulation thanks to ESIL on x86, ARM and MIPS\n \ New make menu to choose plugins to build\n Add ?E clippy echo and use it in ????\n xrefs and types are now properly saved/restored from projects\n\n0.10.1\n\n \ Variables and flags can now be renamed in cursor mode asciinema\n Optimized GDB connectivity, now its 10x faster!\n print signed base 10 hexdumps with pxd[1,2,4]\n radiff2 -C to compare checksums\n Lot of work towards the mach-ification of the OSX/iOS debugger by alvarofe\n more polished cursor movements in Visual mode\n Better ARM and Thumb code analysis and emulation\n Added disassembler support for Microblaze architecture\n Updated unicorn plugin to be in sync with git\n Various enhancements in the Visual mode\n backward disassembly uses RAnal info for better offset computations\n asm.bbline uses RAnal info to have precise results\n fix bug in env.sh when using more than 9 arguments\n \ Mingw compilation improvements\n preliminary support of XNU debugging\n \ ESIL support for v810\n radare2 does now compile in appveyor: no more excuses for broken commits on windows!\n Lanai (the secret CPU used by Google) support\n \ a new shiny xtensa CPU analysis backend\n change local variables/arguments format names (ebp-0x10, ebp+0x13 becomes, respectively, local_10h and arg_13h) and now it works too when asm.ucase is set.\n add Vdn option to rename a flag/function/local variable/local argument used in the current instruction\n refactoring of RFlag + better names for functions when there are symbols\n ahi now supports IPv4 and syscall\n various optimizations and bugfixes\n opcodes descriptions for v810, propeller, riscv, tms320, lm32, i4004, i8080, java, Malbolge, SH-4, M68K, ARC and LH5801 (that you can access with ?d or e asm.describe=true)\n axg to get a graph of the function xrefs to reach a specific point.\n\nLanai CPU\n\nRadare 0.10.0\n\nblessr2\n\nSince it took us a very long time to do this release, he had the\ntime to implement a second one, using Material design, which turns\nout to be the default one for the Android and FirefoxOS applications.\n\nStability\n\nWe spent a lot of time fuzzing radare2, collecting binaries and writing tests to improve radare2窶å\x86± reliability. We even harvested similar projects bugtracker to see how well radare2 would deal with binary that broke them. Currently, we have something like 2000 tests dedicated to commands, and most of disassemblers have a 100% coverage.\n\nAbout the testsuite, you may notice that it窶å\x86± much more quick to run it now. We managed, on travis-ci, to go from 1h30 for only gcc on linux, to 20 minutes for clang on OSX, and gcc+clang on linux. No more excuses for not running the testsuite before a commit.\n\nYou might also be happy to know that radare2 now successfully compiles on tcc, the tiny C compiler. This might be useful if you窶å\x86³e compiling radare2 on weird platforms. Please be sure to use tcc from git too :) Moreover, radare2 tries as hard as it can to run on your-super-weird-platform-that-no-ones-has-ever-head-off, we implemented the cp and mv commands, since you might not find those everywhere.\n\nThanks to revskills for spending time fuzzing and reporting several parts of r2.\nBetter support for iOS\n\nRadare2 comes with some new features that will make iOS reverse engineers happy:\n\n asm.emu will tell you which objc_msgSend apis and syscalls are called\n Better emulation of Thumb, aarch64 and arm32\n Supports r2pipe in Swift, known to work on tvOS, watchOS, iPhone and OSX.\n Native OBJC parser implementation, no need to use class-dump tool anymore!\n Some enhancements in process memory dumping\n Supports tfp0 to read/write kernel memory if kernel is patched properly\n Exploit an iOS<=8 vulnerability to read\n Code Signing is now done properly, updated instructions.\n Add support for nativelly running on Apple Watch (without jailbreak).\n Some random debugger bug fixes, still not fully working on iOS\n List memory modules, not just memory maps\n Unaligned instructions are different than the invalid ones\n MACH0 Crypto information is now accessible via SDB\n\nElCapitan users will get a bit pissed of because they are no longer able to debug /bin/ls, because Apple窶å\x86± SIP will block debugging binaries found in system directories. The solution for this is to copy them into your home :P Also, default installation path has changed from /usr to /usr/local.\nDebugger\n\nThis release was supposed to focus on the debugger, fixing many issues, and adding some new bugs features, like:\n\n Support for memory-access hardware breakpoints\n Much better Windows 32 and 64bit debugger support\n \ List opened handles and Windows using dd\n Rarun2 supports pipe execves in std file descriptors\n Remote debugging via IO plugins work a bit better now\n 3 different backtrace algorithms, configurable at runtime\n\ndbg\nMemory usage\n\nIt seems that no one ever took care of radare2 memory consumption before, because it was still lower than its competitors/alternatives. But for this release, radare2 went on a diet : it now consumes 3 to 5 times less memory !\nPretty graphs\n\nOur beloved ret2libc spent a lot of time rewriting graphs engine from scratch, with overlaps handling and better colours ! See how cool this is:\n\ngraph\nNew architectures support\n\nWe know a lot of people are using radare2 because it supports a lot of funky/exotic/awful/funny/scary architectures.\n\nRemember when we added support for the famous 6502 cpu in the last release? This time, we added analysis support and opcode description (with ?d), because not everyone is fluent in 6502 assembly code. And even more, since we know some of you just care about the meaning of the code and not the beauty of the assembly listing, we added pseudo-decompiler support. Yes, we have a pseudo-decompiler for 6502.\n\nDid you know that we have a contributor named condret that really likes the pokemon game on gameboy? This is why he窶å\x86± pushing ESIL, implemented a fancy gameboy disassembler, and for this latest release, he wrote a gameboy assembler! You can now craft your own shellcodes, or, if you窶å\x86³e crazy, games, for gameboy, with radare2.\n\nWe also improved AVR support, with analysis (radare2 analysis is generic, so it窶å\x86± pretty easy to add its support for an architecture), an assembler, ESIL so you can emulate it easily, and description. This led two people (namely Alexander Bolshev and Boris Ryutin) to do worksops at ZeroNights, t2.fi and S4x16 conferences, about reversing and exploiting this architecture with radare2!\n\nAlso, we added support for assembling ARM and ARM64, ADN decoding (yes. It窶å\x86± the BCL plugin in r2pm. You don窶å\x86² know about r2pm? Keep reading then.), demangling for Rust binaries, Wii/Gamecube binaries, disassemblers for LM32, MCS96, analysis and ESIL for PPC, V810 and RISC-V, 窶ヲ\n\nAnd since we have at least one Windows user, we also added support for Windows minidump format, aka mdmp, and windows-on-raspberry2-fileformat-it窶å\x86±-almost-a-PE because apparently, it窶å\x86± a real thing.\nGame Consoles\n\nWe have been also working in adding support for more game console ROMs:\n\n NES (nintendo-entertainment-system)\n \ SMD (sega megadrive)\n SMS (mastersystem/gamegear)\n DOL (wii/gamecube)\n \ GB (initial support for assembling instructions)\n\nOther new binary formats are now supported too:\n\n CGC executables\n MBN/SBL Android trustboot images\n \ Support for RPI2 PE Windows executables\n Windows Minidump (mdmp) files\n\nBindings\n\nRemember the bindings, and how much languages we supported? Remember when you had to read radare2窶å\x86± source code to write a simple one-liner, and ended parsing a call to system with radare2, pipe, sed, pipe, tr, pipe, awk, pipe, sed ? Yeah, us too. This is why we ditched (don窶å\x86² worr, they are still there, but deprecated) the bindings, and created r2pipe. Since you like so much calling radare2 in system, this is exactly what is does: popping radare2, and piping commands to it.\n\nThis brings several advantages:\n\nWe don窶å\x86² have to mainwe only have to implement a few commands per languages You don窶å\x86² have to read radare2窶å\x86± source code if you don窶å\x86² want to: if you know how to use radare2, you know how to use r2pipe! Append j to almost every command to get native JSON output! No needd now in JSON:\\n%s\\n' % r2.cmdj('pij 5'))\nprint('architecture: %s' % r2.cmdj('ij')['bin']['machine'])\n\nAll r2pipe APIs has been updated to work on Windows, Linux and OSX. In addition, the new native:// URI allows to use r2pipe api using the native C API iipes or sockets. This allows to reuse the same code but speeding up things a lot.\nr2pm\n\nRadare2 had an implementation of 2048, a port-scanner, and even a secret ascii-penis, but now, it also has a package manager!\n\nNo, this is not overkill, stop complaining and keep on reading. Radare2 supports a lot of useless things. This is why we put non-code things into separate packages, that can be browsed/searched/installed/removed/updated with the new tool called r2pm.\n\n$ r2pm\nUsage: r2pm [cmd] [...]\nCommands:\n -i,info r2pm -i # pkgs info\n -i,install r2pm -i baleful\n -u,uninstall r2pm -u baleful\n -l,list list installed pkgs\n -t,test FX,XX,BR BID check in travis regressions\n -s,search [] search in database\n -v,version show version\n -h,help \ show this message\n -c,clean clear source cache\nEnvironment:\nSUDO=sudo \ use this tool as sudo\nR2PM_PREFIX=/usr prefix for syspkgs\nR2PM_PLUGDIR=~/.config/radare2/plugins \ # default value, home-install for plugins\nR2PM_PLUGDIR=/usr/lib/radare2/last/ \ # for system-wide plugin installs\n$\n\nNote that r2pm -s will show you every available package.\nLicense\n\nWe managed to remove the last bits of GPL licensed code in radare2! We窶å\x86³e not a complete LGPL project (some modules installable with r2pm have a different licenses, please pay attention to that). This means that you can use radare2 into your proprietary product, while betraying without giving the source to your users, but if you modify radare2, you need to publish the modifications. It might be easier for you to try to upstream them by the way ;)\nUsability\n\nAs usual, we窶å\x86³e going to pretend that every command has now a fancy colored help displhout.\n\nYou might remember hearing a loud noise a couple of months ago. This was when jvoisin was told that to have something like the follow-fork-mode in GDB, he had to find the syscall number for his architecture, break on this breakpoint with the dcs cour Intermediary Language, used for emulation, analysis, transformations, trolling, 窶ヲ This is why we added several new commands under ae (*A*nalyse with *E*sil), like aeip to set the ESIL eip to the current eip, 窶å\x92\x8Cef窶� to emulate an entire function, aation\n| += A+=B => B,A,+=\n| + A=A+B => B,A,+,A,=\n| *= A*=B => B,A,*=\n| /= A/=B => B,A,/=\n| &= and ax, bx => bx,ax,&=\n| | or r0, r1, r2 => r2,r1,|,r0,=\n| ^= xor ax, bx => bx,ax,^=\n| >>= shr ax, bx => bx,ax,>>= # shift rightwice, compare and update esil flags\n| < compare for smaller\n| <= compare for smaller or equal\n| > compare for bigger\n| >= compare bigger for or equal\n| ?{ if popped value != 0 run the block until }\n| POP drops last element in thethe new asm.emuwrite, asm.emustr, and asm.emu options! If you set them to true, radare2 will do its very best to improves the analysis with ESIL, but be careful, setting those variables may give you an ï¾\x83ï½¼ber-verbose output.\nExtras\n\nThe radare2-extras repog additions are:\nUnicorn\n\nA lot of people are talking about unicorn, a CPU emulator. While we think that ESIL is way better for everything and that you totally should use it and contribute to radare2, we added support for it in radare2, it窶å\x86± as simple aLinux kernel packet filtering is done by a custom virtual machine that emulates code. r2 is now able to assemble, disassemble, analyze, emulate this new architecture. Thanks mrmacete!\nNew bots\n\nThere are now new NodeJS bots for IRC and Telegram, ready to use in the radare2-bindings/r2pipe/nodejs/examples/*.\n\n r2tgirc : telegram-to-irc bot that communicates the #radare freenode channel with the Telegram窶å\x86± radare one.\n\n r2tg-bot : Radare2 bot for Telegram and connected to the cloud.\n\n \ r2irc-bot : IRC bot of r2 to use any binary in your system from the chat.\n" module: pkgsrc subject: 'CVS commit: pkgsrc/devel' unixtime: '1465820771' user: wiz