docs: document GIT_EUSER/GIT_EPASSTHROUGH
diff --git a/docs/error-handling.md b/docs/error-handling.md
index 8df9a40..05725f2 100644
--- a/docs/error-handling.md
+++ b/docs/error-handling.md
@@ -110,6 +110,15 @@ int git_repository_open(git_repository **repository, const char *path)
}
~~~
+Note that some error codes have been defined with a specific meaning in the
+context of callbacks:
+- `GIT_EUSER` provides a way to bubble up a non libgit2-related failure, which
+ allows it to be preserved all the way up to the initial function call (a `git_cred`
+ setup trying to access an unavailable LDAP server for instance).
+- `GIT_EPASSTHROUGH` provides a way to tell libgit2 that it should behave as if
+ no callback was provided. This is of special interest to bindings, which would
+ always provide a C function as a "trampoline", and decide at runtime what to do.
+
The public error API
--------------------
@@ -119,7 +128,7 @@ The public error API
of error and the error message that was generated by the library.
Do not use this function unless the prior call to a libgit2 API
returned an error, as it can otherwise give misleading results.
- libgit2's error strings are not cleared aggressively,
+ libgit2's error strings are not cleared aggressively,
and this function may return an error string that reflects a prior error,
possibly even reflecting internal state.