carlwgeorge / rpms / qemu

Forked from rpms/qemu a year ago
Clone

6d8a1cb Clean up binfmt.d configuration files

2 files Authored by npmccallum 7 years ago, Committed by crobinso 7 years ago,
    Clean up binfmt.d configuration files
    
    In particular, I performed the following changes:
    
    1. Add the (missing) aarch64 configuration.
    
    2. Mask out e_ident[EI_OSABI]. A single OS can have multiple values
       here. We just pass them all to qemu. I personally ran into this issue
       (where filtering was too strict) on ppc64.
    
    3. Mask out e_ident[EI_ABIVERSION]. On Linux, this value is ignored.
    
    4. Mask out e_ident[EI_PAD]. The current check insists they are zero
       when they are, in fact, undefined.
    
    5. Don't mask any bits for e_ident[EI_VERSION]. We want an exact match
       on this since there has only ever been one version. However, alpha, i386
       and i486 were masking out the least significant bit.
    
    6. Don't mask any bits for e_ident[EI_DATA]. You can't mask out bits for
       endianness because it controls the byte order of later bytes in the
       binfmt match (starting at offset 0x10). So you can never have a rule
       which works with bits masked out on this field. However, alpha, i386 and
       i486 were masking out the least significant bit.
    
    (cherry picked from commit 0583426e3d0692b632bf38d092c5872a1a978f5b)
    
        
file modified
+23 -22
file modified
+3 -0