Bicl is a software that allows you to modify command line boot arguments in binary files, particularly in the PPC64 Linux compressed kernel image.
Despite the seemingly complex nature of boot argument processing for powerpc Xen, bicl simplifies the process thanks to the 'Simplify bootargs processing' patch. This patch ensures that the following rules apply: arguments from 32-bit wrapper override all else, builtin arguments in 64-bit image override firmware, and firmware is used if neither of the above exist.
While it's true that dom0 Linux has its own boot argument processing, there is a clear transitive relation between Xen's bootargs and Linux's bootargs. That means Xen first applies the three aforementioned rules to determine what to feed Linux before Linux applies its own rules (albeit with slightly different precedence) to determine what to feed the kernel proper.
The builtin command line buffer in bicl is essentially a separate ELF section, making it easy for post-processing tools to locate and edit it. In fact, the format of the builtin command line buffer is so simple that many tools may one day understand it. However, at present, bicl is the most commonly-used tool for the job, and it's shipped under the LGPL as part of the K42 source.
Using bicl is easy – simply run the command "bicl 'builtin-cmdline' manipulates builtin command line arguments" followed by "builtin-cmdline FILE [ARGS]" to edit your binary files. Plus, bicl comes equipped with helpful features like a help statement and version statement.
Overall, bicl is a must-have tool for anyone looking to streamline the process of editing boot arguments in binary files. In fact, it's used every day to edit the builtin command lines of Linux and Xen binaries as part of an internal IBM project. Give it a try and you won't be disappointed!
Version 0.1.0: N/A