* Extended status codes, so that we can tell the user exactly why we don't want to load a "supposed microcode", e.g. "extended table checksum is incorrect". * Optimize duplicates further ? - compare opaque microcode data, and merge pf_mask (and maybe even signatures, using extended tables) when the opaque data and common header metadata (date, versions, revision) are the same. - good way to test the kernel driver's extended table support, could not find any test vector. - good way to produce a test vector for our own extended table support code, which is currently completely untested. - sha256 of all opaque data available shows that the size savings would be rather minimal, thus not really worth the effort. * Compressor support (gzip, others) without the need for stdin tricks (gzip -dc file.bin.gz | iucode_tool -k -). VERY useful for .dat files, less so for .bin files. * Microcode selection: * select microcodes which were already installed in -K dir * select/unselect by signature+pfmask+revision * change code to actually be able to select and merge in a lossless way, would simplify things a lot. * error handling - return status when we skip a ucode? when we skip a file? * --overwrite: removes symlinks. Maybe it would be better to fail? * use openat?