NAME
khttpdigest_validate
,
khttpdigest_validatehash
—
validate an HTTP digest
request
LIBRARY
library “libkcgi”
SYNOPSIS
#include
<sys/types.h>
#include <stdarg.h>
#include <stdint.h>
#include <kcgi.h>
int
khttpdigest_validate
(struct kreq
*req, const char *password);
int
khttpdigest_validatehash
(struct kreq
*req, const char *hash);
DESCRIPTION
The
khttpdigest_validate
()
and
khttpdigest_validatehash
()
functions validate the given password (or a
pre-combined hash) with the HTTP digest-authorised
request req as returned by
khttp_parse(3) or
khttp_fcgi_parse(3). It fully implements all components of the
digest: QOP, MD5 types, etc. It
does not
check that the URI component of the digest matches that of the request, as
these values are known to be mutable.
The
khttpdigest_validate
()
function will compute a hash from the request and password;
khttpdigest_validatehash
()
operates on a pre-computed hash value.
RETURN VALUES
khttpdigest_validate
() and
khttpdigest_validatehash
() will return zero if
validation failed, less than zero if the request was not properly set up for
HTTP digest validation (no HTTP method, not a digest request, not already
authenticated by the web server), or greater than zero if the validation
succeeded.
SEE ALSO
kcgi(3), khttp_fcgi_parse(3), khttp_parse(3), khttpbasic_validate(3)
AUTHORS
The khttpdigest_validate
() and
khttpdigest_validatehash
() functions were written by
Kristaps Dzonsons
<kristaps@bsd.lv>.