+/**
+ * adu's version of strerror(3).
+ *
+ * \param num The error number.
+ *
+ * \return The error text of \a num.
+ */
+const char *adu_strerror(int num)
+{
+ assert(num > 0);
+ if (num == E_OSL) {
+ assert(osl_errno > 0);
+ return osl_strerror((osl_errno));
+ }
+ if (IS_SYSTEM_ERROR(num))
+ return strerror((num) & ((1 << SYSTEM_ERROR_BIT) - 1));
+ return adu_errlist[num];
+}
+