FreeBSD Manual Pages
KHTTPBASIC_VALIDATE(3) Library Functions Manual KHTTPBASIC_VALIDATE(3) NAME khttpbasic_validate -- validate an HTTP basic authorisation request LIBRARY library "libkcgi" SYNOPSIS #include <sys/types.h> #include <stdarg.h> #include <stdint.h> #include <kcgi.h> int khttpbasic_validate(struct kreq *req, const char *user, const char *password); DESCRIPTION The khttpbasic_validate() function validates the given user and password with the HTTP "basic" or "bearer" authorised request req as returned by khttp_parse(3) or khttp_fcgi_parse(3). In both cases, the request is validated by base64-encoding user:password and comparing it to the given token. RETURN VALUES khttpbasic_validate() will return zero if validation failed, less than zero if the request was not properly set up for HTTP basic or bearer validation (no HTTP method, not a basic or bearer request, not already authenticated by the web server), or greater than zero if the valida- tion succeeded. EXAMPLES In the following fragment, assume r a pointer to a struct kreq success- fully initialised by khttp_parse(3). If validation is not provided, it returns an HTTP 401. The expected principle is "james", password "bond". Otherwise, it returns an HTTP 200. if (khttpbasic_validate(r, "james", "bond") <= 0) { khttp_head(r, kresps[KRESP_STATUS], "%s", khttps[KHTTP_401]); khttp_head(r, kresps[KRESP_WWW_AUTHENTICATE], "basic realm=\"%s\"", "some realm"); } else khttp_head(r, kresps[KRESP_STATUS], "%s", khttps[KHTTP_200]); SEE ALSO kcgi(3), khttp_fcgi_parse(3), khttp_parse(3), khttpdigest_validate(3) AUTHORS Written by Kristaps Dzonsons <kristaps@bsd.lv>. FreeBSD Ports 14.quarterly $Mdocdate$ KHTTPBASIC_VALIDATE(3)
NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | EXAMPLES | SEE ALSO | AUTHORS
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=khttpbasic_validate&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>