#!/bin/sh -e # # errno - search POSIX error codes by error number, error name, # or error description # Copyright (C) 2010 Dustin Kirkland # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program 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 General Public License # along with this program. If not, see . # Header finding trick from Kees Cook headers=$(echo "#include " | gcc -E - | grep "\.h" | awk -F\" '{print $2}' | sort -u) if echo "$code" | egrep -qs "^[0-9]+$"; then # Input is a number, search for a particular matching code egrep -h "^#define\s.*\s+$code\s+/" $headers | sed 's/^#define\s*//' else # Input is not a number, search for any matching strings grep -hi "$code" $headers | sed 's/^#define\s*//' fi