A new post titled "[GSOC] Panic Room, week #2" has been published on the coreboot blog. Find the full post at http://blogs.coreboot.org/blog/2016/06/11/gsoc-panic-room-week-2/

<h3>How was your last week?</h3>
<p>Let’s say that it was a bit unexpected.</p>
<p>I spent the majority of it trying to wrap my head around the ELF (Executable Linkable Format) <a href="https://refspecs.linuxfoundation.org/elf/elf.pdf">specification</a>.<br />
I used this new acquired knowledge to improve the utility cbfstool and allow it to extract payloads contained inside a CBFS directly into ELF instead of SELF (commit).</p>
<p>In order to achieve this cbfstool has to do a few things:</p>
<ul>
<li>Extract the payload from the coreboot image</li>
<li>Parse the segment table contained inside the SELF payload in order to find out how many and which segments are present.</li>
<li>Using the elf_writer API generate a compliant ELF header</li>
<li>Take the content from each segment and copy it to the correspondent ELF section header and configure it accordingly</li>
<li>Once the section table is filled out, use elf_writer to generate the program header table and write out the final ELF</li>
</ul>
<p>The final results would allow to, for example, easily move payloads from a CBFS to another one without having to re-build the payload, coreboot rom or mess with the build system configuration.<br />
Right now the implementation it’s not complete yet but it works quite well with a good chunk of the payloads commonly used with coreboot such as SeaBIOS, coreinfo, nvramcui and others.<br />
The major hurdles right now are to get the GRUB payload to work and add a way to handle the extraction of a compressed payload.</p>
<h3>Wait a minute! Weren’t you working on SerialICE?</h3>
<p>You are quite the inquisitive type, aren’t you?</p>
<p>Yes, my main goal is still to continue integrating SerialICE and coreboot.<br />
Unfortunately there have been a few showstoppers this week, first my only test clip broke and now my target, Lenovo x60, stopped working and I am no longer able to flash its BIOS chip.<br />
I already ordered a replacement but it’ll probably take a bit more than a week to arrive.</p>
<p>In the meantime my mentor (adurbin) kindly pointed out the task above to keep me busy while waiting.</p>
<h3>What are your plans for the next week?</h3>
<p>I plan to finish implementing the functionality described above and test all the remaining payloads.<br />
Hopefully I will also be able to start looking at some of the other tasks that have been suggested to me by my mentors.</p>
<p>That’s it for today, see you next week!</p>