Richard Levitte 71f2994b15 ERR: special case system errors
Because system errors can be any positive number that fits in an 'int'
according to POSIX, we can't reasonably expect them to be in the 1..127
range, even though that's the most usual.

Instead of packing them into the OpenSSL error code structure, we
recognise them as a special case and mark them as such by storing them
in our error queue with the highest bit set.  We make OpenSSL specific
error records have their highest bit cleared, and in doing so, we
shift down the library section of the code by one bit.  This still
leaves a very large section for the reason codes.

Of course, we must adapt the error code and reason string extraction
and printing functions accordingly.

With this, we also thrown away the pre-loaded array of system error
strings, and extract them from the system when needed instead, i.e.
when we create error strings.

Reviewed-by: David von Oheimb <david.von.oheimb@siemens.com>
(Merged from https://github.com/openssl/openssl/pull/12343)
2020-07-05 21:13:03 +02:00
..
2020-06-19 07:59:46 +02:00
2020-04-23 13:55:52 +01:00
2020-06-25 14:13:12 +01:00
2019-10-10 14:12:15 +02:00
2020-04-23 13:55:52 +01:00
2020-04-23 13:55:52 +01:00
2019-09-28 20:26:35 +02:00
2020-05-15 14:09:49 +01:00
2020-06-30 11:52:15 +10:00
2020-05-15 14:09:49 +01:00
2020-07-05 21:13:03 +02:00
2020-06-21 10:09:48 +02:00
2020-07-05 13:18:08 +10:00
2020-06-30 11:52:15 +10:00
2020-04-23 13:55:52 +01:00
2020-05-15 14:09:49 +01:00
2019-11-12 13:30:35 +01:00
2019-10-10 14:12:15 +02:00
2020-04-23 13:55:52 +01:00
2020-04-23 13:55:52 +01:00
2020-04-23 13:55:52 +01:00
2020-04-23 13:55:52 +01:00
2020-05-15 14:09:49 +01:00
2020-06-04 14:33:57 +01:00
2020-05-15 14:09:49 +01:00
2020-05-15 14:09:49 +01:00
2020-04-23 13:55:52 +01:00
2020-06-24 20:07:46 +10:00
2020-04-23 13:55:52 +01:00
2020-04-23 13:55:52 +01:00
2020-04-23 13:55:52 +01:00
2020-04-23 13:55:52 +01:00
2020-04-23 13:55:52 +01:00
2020-04-23 13:55:52 +01:00
2020-04-23 13:55:52 +01:00
2019-12-18 14:46:01 +10:00
2019-10-10 14:12:15 +02:00
2020-06-04 14:33:57 +01:00
2020-04-23 13:55:52 +01:00
2020-04-23 13:55:52 +01:00
2019-09-28 20:26:36 +02:00
2020-04-23 13:55:52 +01:00
2019-12-11 19:04:01 +01:00
2020-04-23 13:55:52 +01:00
2020-06-04 14:33:57 +01:00
2019-09-28 20:26:34 +02:00
2020-06-22 02:35:01 +02:00
2019-09-28 20:26:34 +02:00
2020-04-28 15:37:37 +02:00
2020-06-04 14:33:57 +01:00
2020-04-23 13:55:52 +01:00
2019-09-28 20:26:36 +02:00
2020-05-15 14:09:49 +01:00
2020-04-23 13:55:52 +01:00
2020-04-23 13:55:52 +01:00
2020-04-23 13:55:52 +01:00
2020-04-23 13:55:52 +01:00
2020-05-15 14:09:49 +01:00
2020-04-23 13:55:52 +01:00
2019-11-03 18:38:23 +01:00
2019-07-01 13:32:46 -04:00
2020-04-23 13:55:52 +01:00
2020-04-23 13:55:52 +01:00