# Copyright (C) 2016 Patrick "P. J." McDermott # # This file is part of libsh. # # libsh is free software: you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as published # by the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # libsh is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with libsh. If not, see # . static errlist=' EINVAL 1 EUNK 2 EMFILE 3 EACCES 4 ENOENT 5 EISDIR 6 EBADF 7 ' strerror(int errnum) { eval "msgget \"\${__errsym_${errnum}}\"" } static init_error_syms() { IFS=' ' while read errsym errno; do eval "${errsym}=${errno}" eval "__errsym_${errno}=${errsym}" done <<-EOF ${errlist} EOF unset IFS } __init ${init_error_syms}