00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef _OSIP_WWW_AUTHENTICATE_H_
00022 #define _OSIP_WWW_AUTHENTICATE_H_
00023
00024
00040 typedef struct osip_www_authenticate osip_www_authenticate_t;
00041
00046 struct osip_www_authenticate
00047 {
00048 char *auth_type;
00049 char *realm;
00050 char *domain;
00051 char *nonce;
00052 char *opaque;
00053 char *stale;
00054 char *algorithm;
00055 char *qop_options;
00056 char *auth_param;
00057 };
00058
00059
00060 #ifdef __cplusplus
00061 extern "C"
00062 {
00063 #endif
00064
00069 int osip_www_authenticate_init (osip_www_authenticate_t ** header);
00075 int osip_www_authenticate_parse (osip_www_authenticate_t * header, const char *hvalue);
00081 int osip_www_authenticate_to_str (const osip_www_authenticate_t * header, char **dest);
00086 void osip_www_authenticate_free (osip_www_authenticate_t * header);
00092 int osip_www_authenticate_clone (const osip_www_authenticate_t * header,
00093 osip_www_authenticate_t ** dest);
00094
00099 char *osip_www_authenticate_get_auth_type (osip_www_authenticate_t * header);
00105 void osip_www_authenticate_set_auth_type (osip_www_authenticate_t * header,
00106 char *value);
00111 char *osip_www_authenticate_get_realm (osip_www_authenticate_t * header);
00117 void osip_www_authenticate_set_realm (osip_www_authenticate_t * header, char *value);
00122 char *osip_www_authenticate_get_domain (osip_www_authenticate_t * header);
00128 void osip_www_authenticate_set_domain (osip_www_authenticate_t * header, char *value);
00133 char *osip_www_authenticate_get_nonce (osip_www_authenticate_t * header);
00139 void osip_www_authenticate_set_nonce (osip_www_authenticate_t * header, char *value);
00144 char *osip_www_authenticate_get_opaque (osip_www_authenticate_t * header);
00150 void osip_www_authenticate_set_opaque (osip_www_authenticate_t * header, char *value);
00155 char *osip_www_authenticate_get_stale (osip_www_authenticate_t * header);
00161 void osip_www_authenticate_set_stale (osip_www_authenticate_t * header, char *value);
00166 #define osip_www_authenticate_set_stale_true(header) osip_www_authenticate_set_stale(header,osip_strdup("true"))
00167
00171 #define osip_www_authenticate_set_stale_false(header) osip_www_authenticate_set_stale(header,osip_strdup("false"))
00172
00176 char *osip_www_authenticate_get_algorithm (osip_www_authenticate_t * header);
00182 void osip_www_authenticate_set_algorithm (osip_www_authenticate_t * header,
00183 char *value);
00188 #define osip_www_authenticate_set_algorithm_MD5(header) osip_www_authenticate_set_algorithm(header,osip_strdup("MD5"))
00189
00193 char *osip_www_authenticate_get_qop_options (osip_www_authenticate_t * header);
00199 void osip_www_authenticate_set_qop_options (osip_www_authenticate_t * header,
00200 char *value);
00201
00202 #ifdef __cplusplus
00203 }
00204 #endif
00205
00208 #endif