Topic: SRP with WOLF_CONF_MATH set to SP Cortex-M


I'm trying to prototype SRP on an STM32WB55 chip using STM32CubeIDE. I can compile my test program just fine when WOLF_CONF_MATH is set to 1 (FAST); however, in order to try to speed things up, I would like to use SP Cortex-M math. I can't get the program to compile when I set WOLF_CONF_MATH to 4. I keep getting compile errors to undefined reference to sp_submod. Is there anything special I need to do to get this to work?

I have attached my wolfSSL config file for your reference.


Post's attachments

wolfSSL.wolfSSL_conf.h 15.92 kb, 1 downloads since 2021-04-13 

You don't have the permssions to download the attachments of this post.


Re: SRP with WOLF_CONF_MATH set to SP Cortex-M

Hi keeperp,

Thank you for the report. I believe the `WOLF_CONF_MATH == 4` option will work if you comment out `WOLFSSL_SP_MATH` in the generated `wolfSSL.I-CUBE-wolfSSL_conf.h`. The `WOLFSSL_SP_MATH` define reduces code size and disables some areas of the code.

For example if building this on Linux "./configure --enable-srp --enable-sp --enable-sp-math && make" it will report "configure: error: Cannot use single precision math and SRP".
If I build without `--enable-sp-math` or `WOLFSSL_SP_MATH` it works fine.

David Garske, wolfSSL


Re: SRP with WOLF_CONF_MATH set to SP Cortex-M

That worked, thank you, David!