<div id="yMail_cursorElementTracker_1596385473878">Forgot to CC the mailing list.</div> <br> <blockquote style="margin: 0 0 20px 0;"> <div style="padding: 10px 0 0 20px; margin: 10px 0 0 0; border-left: 1px solid #6D00F6;"> <div style="font-family:Roboto, sans-serif; color:#6D00F6;"> <div>----- Forwarded message -----</div> <div><b>From:</b> "a.reviewer1234@yahoo.com" <a.reviewer1234@yahoo.com></div> <div><b>To:</b> "lxoliva@fsfla.org" <lxoliva@fsfla.org></div> <div style="display:"none""><b>Cc:</b> </div> <div><b>Sent:</b> Sun, 2 Aug 2020 at 4:54 pm</div> <div><b>Subject:</b> Re: Obfuscated Code</div> </div>  <div id="ymail_android_signature">I am a beginner to reverse engineering, but I want to contribute by helping to make libre replacements for blobs instead of doing CTF challenges.</div><div id="yMail_cursorElementTracker_1596383426417"><br></div><div id="yMail_cursorElementTracker_1596383426525">I have a laptop internal Wi-Fi (2.4GHz, and 5.0GHz) and Bluetooth card which doesn't work due to missing free firmware. Along with the AMD GPUs mentioned recently (I want to buy a RX590), I want to ask what is high-priority.</div><div id="yMail_cursorElementTracker_1596383527497"><br></div><div id="yMail_cursorElementTracker_1596383527658">Seeing as I have the above mentioned hardware and missing Wi-Fi/Bluetooth firmware seems to be a very common issue, I think that may be a good starting point, even if the code is a loadable module or driver, rather than firmware in the source tree itself.</div><div id="yMail_cursorElementTracker_1596383601501"><br></div><div id="yMail_cursorElementTracker_1596383601654">Please don't expect me to make much progress quickly; we very much need more people to help.</div> <br> <blockquote style="margin: 0 0 20px 0;"> <div style="font-family:Roboto, sans-serif; color:#6D00F6;"> <div>On Sun, 2 Aug 2020 at 4:07 pm, Alexandre Oliva</div><div><lxoliva@fsfla.org> wrote:</div> </div> <div style="padding: 10px 0 0 20px; margin: 10px 0 0 0; border-left: 1px solid #6D00F6;"> On Jul 24, 2020, "<a shape="rect" ymailto="mailto:a.reviewer1234@yahoo.com" href="mailto:a.reviewer1234@yahoo.com">a.reviewer1234@yahoo.com</a>" <<a shape="rect" ymailto="mailto:a.reviewer1234@yahoo.com" href="mailto:a.reviewer1234@yahoo.com">a.reviewer1234@yahoo.com</a>> wrote:<div class="yqt4362124122 yQTDBase" id="yqtfd36671"><br clear="none"><br clear="none">> I believe in the past I have heard that linux-libre removes obfuscated<br clear="none">> code from mainline linux.</div><br clear="none"><br clear="none">That was presumably in reference to disguising dumps of pieces of binary<br clear="none">firmware code as configuration data in arrays of bytes.  This was common<br clear="none">practice in Linux when we started.<br clear="none"><br clear="none">It has been largely deprecated there, in favor of loadable firmware<br clear="none">files, later moved to a distribution outside the kernel Linux source<br clear="none">tree.  There are very few remaining examples.<br clear="none"><br clear="none">Though this move helped reduce accidental infringement, it did nothing<br clear="none">to solve the actual software freedom problem: the non-Free firmware<br clear="none">programs still exist, and are most often still required by drivers.<br clear="none"><br clear="none">The best way to solve that is to reverse-engineer those blobs, and<br clear="none">develop Free versions of them.  People who have the skills, the interest<br clear="none">and the availability to engage in such tasks have been very rare<br clear="none">findings.<br clear="none"><br clear="none">-- <br clear="none">Alexandre Oliva, happy hacker<br clear="none"><a shape="rect" href="https://FSFLA.org/blogs/lxo/" target="_blank">https://FSFLA.org/blogs/lxo/</a><br clear="none">Free Software Activist<br clear="none">GNU Toolchain Engineer<div class="yqt4362124122 yQTDBase" id="yqtfd36175"><br clear="none"></div> </div> </blockquote> </div> </blockquote>