> When trying to compile openssl-fips-1.2.3 with the default options (asm
> enabled on x86_64), I get the following problem:
> 
> $ ./config --prefix=/usr fipscanisterbuild
> 
> ...
> 
> $ make
> ...
> 
> md5-x86_64.s
> md5-x86_64.s: Assembler messages:
> md5-x86_64.s:41: Error: 0xd76aa478 out range of signed 32bit
> displacement

The problem was discussed multiple times and is addressed in all
releases except for fips-1.x, because fixing the latter costs. You can
compile fipscanister.o on older system or place modified assembler
somewhere on your $PATH (it doesn't have to be /usr/bin). To do the
latter download binutils, unpack, open gas/config/tc-i386.c in text
editor, locate "out range of signed" and replace offending code with
warning, e.g.


#if 0
          i.types[this_operand].bitfield.disp32s = 0;
          if (i.types[this_operand].bitfield.baseindex)
            {
              as_bad (_("0x%lx out range of signed 32bit displacement"),
                      (long) exp->X_add_number);
              ret = 0;
            }
#else
           if (i.types[this_operand].bitfield.baseindex)
              as_warn (_("0x%lx out range of signed 32bit displacement"),
                       (long) exp->X_add_number);
#endif

configure, compile and copy 'gas/as-new' as 'as' anywhere on your $PATH.


______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [email protected]
Automated List Manager                           [email protected]

Reply via email to