Genivia Home Documentation
httpda.h File Reference

updated Mon Apr 22 2024 by Robert van Engelen
 
Classes | Macros | Functions | Variables
httpda.h File Reference
#include "stdsoap2.h"
#include "smdevp.h"
#include "threads.h"
Include dependency graph for httpda.h:
This graph shows which files directly or indirectly include this file:

Classes

struct  http_da_data
 Plugin data to override callbacks. More...
 
struct  http_da_session
 Keeps internal state of shared sessions. More...
 
struct  http_da_info
 Used to save and restore credentials for client-side invocations to the same authenticated endpoint. More...
 

Macros

#define HTTP_DA_ID   "SOAP-HTTP-DA/2.1"
 
#define HTTP_DA_SESSION_TIMEOUT   (600)
 

Functions

SOAP_FMAC1 int SOAP_FMAC2 http_da (struct soap *soap, struct soap_plugin *p, void *arg)
 
SOAP_FMAC1 void *SOAP_FMAC2 http_da_md5 ()
 Use soap_register_plugin_arg(soap, http_da, http_da_md5()) for MD5 server-side challenge algorithm (not recommended). More...
 
SOAP_FMAC1 void *SOAP_FMAC2 http_da_md5_sess ()
 Use soap_register_plugin_arg(soap, http_da, http_da_md5_sess()) for MD5-sess server-side challenge algorithm (not recommended). More...
 
SOAP_FMAC1 void *SOAP_FMAC2 http_da_sha256 ()
 Use soap_register_plugin_arg(soap, http_da, http_da_sha256()) for MD5 server-side challenge algorithm (recommended). More...
 
SOAP_FMAC1 void *SOAP_FMAC2 http_da_sha256_sess ()
 Use soap_register_plugin_arg(soap, http_da, http_da_sha256_sess()) for MD5-sess server-side challenge algorithm (recommended). More...
 
SOAP_FMAC1 void *SOAP_FMAC2 http_da_sha512_256 ()
 Use soap_register_plugin_arg(soap, http_da, http_da_sha512_256()) for MD5 server-side challenge algorithm (not yet supported). More...
 
SOAP_FMAC1 void *SOAP_FMAC2 http_da_sha512_256_sess ()
 Use soap_register_plugin_arg(soap, http_da, http_da_sha512_256_sess()) for MD5-sess server-side challenge algorithm (not yet supported). More...
 
SOAP_FMAC1 int SOAP_FMAC2 http_da_verify_post (struct soap *soap, const char *passwd)
 Verifies the password credentials at the server side when used in an HTTP POST service operation. More...
 
SOAP_FMAC1 int SOAP_FMAC2 http_da_verify_get (struct soap *soap, const char *passwd)
 Verifies the password credentials at the server side when used in an HTTP GET service operation. More...
 
SOAP_FMAC1 int SOAP_FMAC2 http_da_verify_put (struct soap *soap, const char *passwd)
 Verifies the password credentials at the server side when used in an HTTP PUT service operation. More...
 
SOAP_FMAC1 int SOAP_FMAC2 http_da_verify_patch (struct soap *soap, const char *passwd)
 Verifies the password credentials at the server side when used in an HTTP PATCH service operation. More...
 
SOAP_FMAC1 int SOAP_FMAC2 http_da_verify_del (struct soap *soap, const char *passwd)
 Verifies the password credentials at the server side when used in an HTTP DELETE service operation. More...
 
SOAP_FMAC1 int SOAP_FMAC2 http_da_verify_method (struct soap *soap, const char *method, const char *passwd)
 Verifies the password credentials at the server side when used in the specified HTTP method. More...
 
SOAP_FMAC1 void SOAP_FMAC2 http_da_save (struct soap *soap, struct http_da_info *info, const char *realm, const char *userid, const char *passwd)
 Saves the credentials to the digest store to use repeatedly for authentication. More...
 
SOAP_FMAC1 void SOAP_FMAC2 http_da_restore (struct soap *soap, struct http_da_info *info)
 Retrieves the credentials from the digest store to use for authentication. More...
 
SOAP_FMAC1 void SOAP_FMAC2 http_da_release (struct soap *soap, struct http_da_info *info)
 Releases the digest store and frees memory. More...
 
SOAP_FMAC1 void SOAP_FMAC2 http_da_proxy_save (struct soap *soap, struct http_da_info *info, const char *realm, const char *userid, const char *passwd)
 Saves the credentials to the digest store to use repeatedly for proxy authentication. More...
 
SOAP_FMAC1 void SOAP_FMAC2 http_da_proxy_restore (struct soap *soap, struct http_da_info *info)
 Retrieves the credentials from the digest store to use for proxy authentication. More...
 
SOAP_FMAC1 void SOAP_FMAC2 http_da_proxy_release (struct soap *soap, struct http_da_info *info)
 Releases the digest store for proxy authentication and frees memory. More...
 

Variables

const char http_da_id []
 

Macro Definition Documentation

#define HTTP_DA_ID   "SOAP-HTTP-DA/2.1"

plugin identification for plugin registry

#define HTTP_DA_SESSION_TIMEOUT   (600)

HTTP digest authentication session times out after ten minutes

Function Documentation

SOAP_FMAC1 int SOAP_FMAC2 http_da ( struct soap *  soap,
struct soap_plugin *  p,
void *  arg 
)

Plugin registry function, use with soap_register_plugin_arg(soap, http_da, ...)

SOAP_FMAC1 void* SOAP_FMAC2 http_da_md5 ( )

Use soap_register_plugin_arg(soap, http_da, http_da_md5()) for MD5 server-side challenge algorithm (not recommended).

Use MD5 for server-side configuration with soap_register_plugin_arg() not recommended

SOAP_FMAC1 void* SOAP_FMAC2 http_da_md5_sess ( )

Use soap_register_plugin_arg(soap, http_da, http_da_md5_sess()) for MD5-sess server-side challenge algorithm (not recommended).

Use MD5-sess for server-side configuration with soap_register_plugin_arg() not recommended

SOAP_FMAC1 void SOAP_FMAC2 http_da_proxy_release ( struct soap *  soap,
struct http_da_info info 
)

Releases the digest store for proxy authentication and frees memory.

Parameters
soapcontext
infoa pointer to the digest store
SOAP_FMAC1 void SOAP_FMAC2 http_da_proxy_restore ( struct soap *  soap,
struct http_da_info info 
)

Retrieves the credentials from the digest store to use for proxy authentication.

Parameters
soapcontext
infoa pointer to the digest store
SOAP_FMAC1 void SOAP_FMAC2 http_da_proxy_save ( struct soap *  soap,
struct http_da_info info,
const char *  realm,
const char *  userid,
const char *  passwd 
)

Saves the credentials to the digest store to use repeatedly for proxy authentication.

Parameters
soapcontext
infoa pointer to the digest store
realmstring (e.g. use soap->authrealm) of the server
useridthe user ID string
passwdthe user password string
SOAP_FMAC1 void SOAP_FMAC2 http_da_release ( struct soap *  soap,
struct http_da_info info 
)

Releases the digest store and frees memory.

Parameters
soapcontext
infoa pointer to the digest store
SOAP_FMAC1 void SOAP_FMAC2 http_da_restore ( struct soap *  soap,
struct http_da_info info 
)

Retrieves the credentials from the digest store to use for authentication.

Parameters
soapcontext
infoa pointer to the digest store
SOAP_FMAC1 void SOAP_FMAC2 http_da_save ( struct soap *  soap,
struct http_da_info info,
const char *  realm,
const char *  userid,
const char *  passwd 
)

Saves the credentials to the digest store to use repeatedly for authentication.

Parameters
soapcontext
infoa pointer to the digest store
realmstring (e.g. use soap->authrealm) of the server
useridthe user ID string
passwdthe user password string
SOAP_FMAC1 void* SOAP_FMAC2 http_da_sha256 ( )

Use soap_register_plugin_arg(soap, http_da, http_da_sha256()) for MD5 server-side challenge algorithm (recommended).

Use SHA-256 for server-side configuration with soap_register_plugin_arg()

SOAP_FMAC1 void* SOAP_FMAC2 http_da_sha256_sess ( )

Use soap_register_plugin_arg(soap, http_da, http_da_sha256_sess()) for MD5-sess server-side challenge algorithm (recommended).

Use SHA-256-sess for server-side configuration with soap_register_plugin_arg()

SOAP_FMAC1 void* SOAP_FMAC2 http_da_sha512_256 ( )

Use soap_register_plugin_arg(soap, http_da, http_da_sha512_256()) for MD5 server-side challenge algorithm (not yet supported).

Use SHA-512-256 for server-side configuration with soap_register_plugin_arg()

SOAP_FMAC1 void* SOAP_FMAC2 http_da_sha512_256_sess ( )

Use soap_register_plugin_arg(soap, http_da, http_da_sha512_256_sess()) for MD5-sess server-side challenge algorithm (not yet supported).

Use SHA-512-256-sess for server-side configuration with soap_register_plugin_arg()

SOAP_FMAC1 int SOAP_FMAC2 http_da_verify_del ( struct soap *  soap,
const char *  passwd 
)

Verifies the password credentials at the server side when used in an HTTP DELETE service operation.

Parameters
soapcontext
passwdthe user password string
Returns
SOAP_OK or error when verification failed
SOAP_FMAC1 int SOAP_FMAC2 http_da_verify_get ( struct soap *  soap,
const char *  passwd 
)

Verifies the password credentials at the server side when used in an HTTP GET service operation.

Parameters
soapcontext
passwdthe user password string
Returns
SOAP_OK or error when verification failed
SOAP_FMAC1 int SOAP_FMAC2 http_da_verify_method ( struct soap *  soap,
const char *  method,
const char *  passwd 
)

Verifies the password credentials at the server side when used in the specified HTTP method.

Parameters
soapcontext
methodthe HTTP method, e.g. "POST", "GET", "PUT", "DELETE", "PATCH", "HEAD", "OPTIONS"
passwdthe user password string
Returns
SOAP_OK or error when verification failed
SOAP_FMAC1 int SOAP_FMAC2 http_da_verify_patch ( struct soap *  soap,
const char *  passwd 
)

Verifies the password credentials at the server side when used in an HTTP PATCH service operation.

Parameters
soapcontext
passwdthe user password string
Returns
SOAP_OK or error when verification failed
SOAP_FMAC1 int SOAP_FMAC2 http_da_verify_post ( struct soap *  soap,
const char *  passwd 
)

Verifies the password credentials at the server side when used in an HTTP POST service operation.

Parameters
soapcontext
passwdthe user password string
Returns
SOAP_OK or error when verification failed
SOAP_FMAC1 int SOAP_FMAC2 http_da_verify_put ( struct soap *  soap,
const char *  passwd 
)

Verifies the password credentials at the server side when used in an HTTP PUT service operation.

Parameters
soapcontext
passwdthe user password string
Returns
SOAP_OK or error when verification failed

Variable Documentation

const char http_da_id[]

plugin identification for plugin registry