ne_forget_auth(3) - Linux man page
Name
ne_set_server_auth, ne_set_proxy_auth, ne_forget_auth - register authentication callbacks
Synopsis
#include <ne_auth.h>
- typedef int (*ne_auth_creds)(void *userdata, const char *realm, int attempt, char *username, char
*password);
- void ne_set_server_auth(ne_session *session, ne_auth_creds callback, void *userdata);
- void ne_set_proxy_auth(ne_session *session, ne_auth_creds callback, void *userdata);
- void ne_forget_auth(ne_session *session);
- void ne_set_server_auth(ne_session *session, ne_auth_creds callback, void *userdata);
Description
The ne_auth_creds function type defines a callback which is invoked when a server or proxy server requires user authentication for a particular request. The realm string is supplied by the server. The attempt is a counter giving the number of times the request has been retried with different authentication credentials. The first time the callback is invoked for a particular request, attempt will be zero.
To retry the request using new authentication credentials, the callback should return zero, and the username and password buffers must contain NUL-terminated strings. The NE_ABUFSIZ constant gives the size of these buffers.
- Tip
If you only wish to allow the user one attempt to enter credentials, use the value of the attempt parameter as the return value of the callback.
- To abort the request, the callback should return a non-zero value; in which case the contents of the username and password buffers are
ignored.
The ne_forget_auth function can be used to discard the cached authentication credentials.
Examples
/* Function which prompts for a line of user input: */
extern char *prompt_for(const char *prompt);
static int
my_auth(void *userdata, const char *realm, int attempts,
char *username, char *password)
{
strncpy(username, prompt_for("Username: "), NE_ABUFSIZ);
strncpy(password, prompt_for("Password: "), NE_ABUFSIZ);
return attempts;
}
int main(...)
{
ne_session *sess = ne_session_create(...);
ne_set_server_auth(sess, my_auth, NULL);
/* ... */
}
Author
Joe Orton <neon@lists.manyfish.co.uk>
- Author.