summaryrefslogtreecommitdiffstats
path: root/lib/error.c
Commit message (Collapse)AuthorAgeFilesLines
* libnl: add ERANGE to errno translationPatrick McHardy2009-11-101-0/+1
| | | | Signed-off-by: Patrick McHardy <kaber@trash.net>
* libnl: add some errno codes to nl_syserr2nlerrPatrick McHardy2008-10-301-0/+2
| | | | Signed-off-by: Patrick McHardy <kaber@trash.net>
* Thread-safe error handlingThomas Graf2008-05-141-0/+106
In order for the interface to become more thread safe, the error handling was revised to no longer depend on a static errno and error string buffer. This patch converts all error paths to return a libnl specific error code which can be translated to a error message using nl_geterror(int error). The functions nl_error() and nl_get_errno() are therefore obsolete. This change required various sets of function prototypes to be changed in order to return an error code, the most prominent are: struct nl_cache *foo_alloc_cache(...); changed to: int foo_alloc_cache(..., struct nl_cache **); struct nl_msg *foo_build_request(...); changed to: int foo_build_request(..., struct nl_msg **); struct foo *foo_parse(...); changed to: int foo_parse(..., struct foo **); This pretty much only leaves trivial allocation functions to still return a pointer object which can still return NULL to signal out of memory. This change is a serious API and ABI breaker, sorry!