macro_rules! openssl_errors {
($(
$(#[$lib_attr:meta])*
$lib_vis:vis library $lib_name:ident($lib_str:expr) {
functions {
$(
$(#[$func_attr:meta])*
$func_name:ident($func_str:expr);
)*
}
reasons {
$(
$(#[$reason_attr:meta])*
$reason_name:ident($reason_str:expr);
)*
}
}
)*) => { ... };
(@func_consts $lib_name:ident; $n:expr; $(#[$attr:meta])* $name:ident; $($tt:tt)*) => { ... };
(@func_consts $lib_name:ident; $n:expr;) => { ... };
(@reason_consts $lib_name:ident; $n:expr; $(#[$attr:meta])* $name:ident; $($tt:tt)*) => { ... };
(@reason_consts $lib_name:ident; $n:expr;) => { ... };
(@count $i:ident; $($tt:tt)*) => { ... };
(@count) => { ... };
}
Defines custom OpenSSL error libraries.
The created libraries can be used with the put_error!
macro to create custom OpenSSL errors.