Hi
In the following code:
https://github.com/XMSS/xmss-reference/blob/171ccbd26f098542a67eb5d2b128281c80bd71a6/wots.c#L85C5-L85C5
The types of variables for the following contains both signed and unsigned int:
- params->wots_w: unsigned int
- csum: int
- msg_base_w: const int*
This might cause issues in corner cases.
- Should csum / msg_base_w be unsigned?
- Should csum be verified to be positive before the bitshift?