aboutsummaryrefslogtreecommitdiff
path: root/src/daemon/https/gnutls.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/daemon/https/gnutls.h')
-rw-r--r--src/daemon/https/gnutls.h284
1 files changed, 152 insertions, 132 deletions
diff --git a/src/daemon/https/gnutls.h b/src/daemon/https/gnutls.h
index 3c17d803..217e0fb7 100644
--- a/src/daemon/https/gnutls.h
+++ b/src/daemon/https/gnutls.h
@@ -211,32 +211,36 @@ extern "C"
211 } MHD_gnutls_params_st; 211 } MHD_gnutls_params_st;
212 212
213 typedef int MHD_gnutls_params_function (MHD_gtls_session_t, 213 typedef int MHD_gnutls_params_function (MHD_gtls_session_t,
214 MHD_gnutls_params_type_t, 214 MHD_gnutls_params_type_t,
215 MHD_gnutls_params_st *); 215 MHD_gnutls_params_st *);
216 216
217/* internal functions */ 217/* internal functions */
218 int MHD__gnutls_global_init (void); 218 int MHD__gnutls_global_init (void);
219 void MHD__gnutls_global_deinit (void); 219 void MHD__gnutls_global_deinit (void);
220 220
221 int MHD__gnutls_init (MHD_gtls_session_t * session, 221 int MHD__gnutls_init (MHD_gtls_session_t * session,
222 MHD_gnutls_connection_end_t con_end); 222 MHD_gnutls_connection_end_t con_end);
223 void MHD__gnutls_deinit (MHD_gtls_session_t session); 223 void MHD__gnutls_deinit (MHD_gtls_session_t session);
224 224
225 int MHD__gnutls_bye (MHD_gtls_session_t session, MHD_gnutls_close_request_t how); 225 int MHD__gnutls_bye (MHD_gtls_session_t session,
226 MHD_gnutls_close_request_t how);
226 int MHD__gnutls_handshake (MHD_gtls_session_t session); 227 int MHD__gnutls_handshake (MHD_gtls_session_t session);
227 int MHD__gnutls_rehandshake (MHD_gtls_session_t session); 228 int MHD__gnutls_rehandshake (MHD_gtls_session_t session);
228 229
229 int MHD_gtls_handshake_client (MHD_gtls_session_t session); 230 int MHD_gtls_handshake_client (MHD_gtls_session_t session);
230 231
231 MHD_gnutls_alert_description_t MHD_gnutls_alert_get (MHD_gtls_session_t session); 232 MHD_gnutls_alert_description_t MHD_gnutls_alert_get (MHD_gtls_session_t
233 session);
232 int MHD__gnutls_alert_send (MHD_gtls_session_t session, 234 int MHD__gnutls_alert_send (MHD_gtls_session_t session,
233 MHD_gnutls_alert_level_t level, 235 MHD_gnutls_alert_level_t level,
234 MHD_gnutls_alert_description_t desc); 236 MHD_gnutls_alert_description_t desc);
235 int MHD__gnutls_alert_send_appropriate (MHD_gtls_session_t session, int err); 237 int MHD__gnutls_alert_send_appropriate (MHD_gtls_session_t session,
236 const char *MHD__gnutls_alert_get_name (MHD_gnutls_alert_description_t alert); 238 int err);
237 239 const char *MHD__gnutls_alert_get_name (MHD_gnutls_alert_description_t
238 enum MHD_GNUTLS_CompressionMethod MHD_gtls_compression_get (MHD_gtls_session_t 240 alert);
239 session); 241
242 enum MHD_GNUTLS_CompressionMethod
243 MHD_gtls_compression_get (MHD_gtls_session_t session);
240// enum MHD_GNUTLS_CipherAlgorithm MHD_gnutls_cipher_get (MHD_gtls_session_t session); 244// enum MHD_GNUTLS_CipherAlgorithm MHD_gnutls_cipher_get (MHD_gtls_session_t session);
241// enum MHD_GNUTLS_KeyExchangeAlgorithm MHD_gnutls_kx_get (MHD_gtls_session_t session); 245// enum MHD_GNUTLS_KeyExchangeAlgorithm MHD_gnutls_kx_get (MHD_gtls_session_t session);
242// enum MHD_GNUTLS_HashAlgorithm MHD_gnutls_mac_get (MHD_gtls_session_t session); 246// enum MHD_GNUTLS_HashAlgorithm MHD_gnutls_mac_get (MHD_gtls_session_t session);
@@ -244,23 +248,23 @@ extern "C"
244// session); 248// session);
245 249
246 size_t MHD__gnutls_cipher_get_key_size (enum MHD_GNUTLS_CipherAlgorithm 250 size_t MHD__gnutls_cipher_get_key_size (enum MHD_GNUTLS_CipherAlgorithm
247 algorithm); 251 algorithm);
248 size_t MHD__gnutls_mac_get_key_size (enum MHD_GNUTLS_HashAlgorithm 252 size_t MHD__gnutls_mac_get_key_size (enum MHD_GNUTLS_HashAlgorithm
249 algorithm); 253 algorithm);
250 254
251/* the name of the specified algorithms */ 255/* the name of the specified algorithms */
252 const char *MHD__gnutls_cipher_get_name (enum MHD_GNUTLS_CipherAlgorithm 256 const char *MHD__gnutls_cipher_get_name (enum MHD_GNUTLS_CipherAlgorithm
253 algorithm); 257 algorithm);
254 const char *MHD__gnutls_mac_get_name (enum MHD_GNUTLS_HashAlgorithm 258 const char *MHD__gnutls_mac_get_name (enum MHD_GNUTLS_HashAlgorithm
255 algorithm); 259 algorithm);
256 const char *MHD_gtls_compression_get_name (enum 260 const char *MHD_gtls_compression_get_name (enum
257 MHD_GNUTLS_CompressionMethod 261 MHD_GNUTLS_CompressionMethod
258 algorithm); 262 algorithm);
259 const char *MHD__gnutls_kx_get_name (enum MHD_GNUTLS_KeyExchangeAlgorithm 263 const char *MHD__gnutls_kx_get_name (enum MHD_GNUTLS_KeyExchangeAlgorithm
260 algorithm); 264 algorithm);
261 const char *MHD__gnutls_certificate_type_get_name (enum 265 const char *MHD__gnutls_certificate_type_get_name (enum
262 MHD_GNUTLS_CertificateType 266 MHD_GNUTLS_CertificateType
263 type); 267 type);
264 268
265 enum MHD_GNUTLS_HashAlgorithm MHD_gtls_mac_get_id (const char *name); 269 enum MHD_GNUTLS_HashAlgorithm MHD_gtls_mac_get_id (const char *name);
266 enum MHD_GNUTLS_CompressionMethod MHD_gtls_compression_get_id (const char 270 enum MHD_GNUTLS_CompressionMethod MHD_gtls_compression_get_id (const char
@@ -292,9 +296,9 @@ extern "C"
292 * Record layer functions. 296 * Record layer functions.
293 */ 297 */
294 ssize_t MHD__gnutls_record_send (MHD_gtls_session_t session, 298 ssize_t MHD__gnutls_record_send (MHD_gtls_session_t session,
295 const void *data, size_t sizeofdata); 299 const void *data, size_t sizeofdata);
296 ssize_t MHD__gnutls_record_recv (MHD_gtls_session_t session, void *data, 300 ssize_t MHD__gnutls_record_recv (MHD_gtls_session_t session, void *data,
297 size_t sizeofdata); 301 size_t sizeofdata);
298 302
299 /* provides extra compatibility */ 303 /* provides extra compatibility */
300 void MHD_gtls_record_disable_padding (MHD_gtls_session_t session); 304 void MHD_gtls_record_disable_padding (MHD_gtls_session_t session);
@@ -303,19 +307,19 @@ extern "C"
303 int MHD__gnutls_record_get_direction (MHD_gtls_session_t session); 307 int MHD__gnutls_record_get_direction (MHD_gtls_session_t session);
304 size_t MHD__gnutls_record_get_max_size (MHD_gtls_session_t session); 308 size_t MHD__gnutls_record_get_max_size (MHD_gtls_session_t session);
305 ssize_t MHD__gnutls_record_set_max_size (MHD_gtls_session_t session, 309 ssize_t MHD__gnutls_record_set_max_size (MHD_gtls_session_t session,
306 size_t size); 310 size_t size);
307 311
308 312
309 int MHD__gnutls_prf (MHD_gtls_session_t session, 313 int MHD__gnutls_prf (MHD_gtls_session_t session,
310 size_t label_size, const char *label, 314 size_t label_size, const char *label,
311 int server_random_first, 315 int server_random_first,
312 size_t extra_size, const char *extra, 316 size_t extra_size, const char *extra,
313 size_t outsize, char *out); 317 size_t outsize, char *out);
314 318
315 int MHD__gnutls_prf_raw (MHD_gtls_session_t session, 319 int MHD__gnutls_prf_raw (MHD_gtls_session_t session,
316 size_t label_size, const char *label, 320 size_t label_size, const char *label,
317 size_t seed_size, const char *seed, 321 size_t seed_size, const char *seed,
318 size_t outsize, char *out); 322 size_t outsize, char *out);
319 323
320/* 324/*
321 * TLS Extensions 325 * TLS Extensions
@@ -326,12 +330,12 @@ extern "C"
326 } MHD_gnutls_server_name_type_t; 330 } MHD_gnutls_server_name_type_t;
327 331
328 int MHD__gnutls_server_name_set (MHD_gtls_session_t session, 332 int MHD__gnutls_server_name_set (MHD_gtls_session_t session,
329 MHD_gnutls_server_name_type_t type, 333 MHD_gnutls_server_name_type_t type,
330 const void *name, size_t name_length); 334 const void *name, size_t name_length);
331 335
332 int MHD__gnutls_server_name_get (MHD_gtls_session_t session, 336 int MHD__gnutls_server_name_get (MHD_gtls_session_t session,
333 void *data, size_t * data_length, 337 void *data, size_t * data_length,
334 unsigned int *type, unsigned int indx); 338 unsigned int *type, unsigned int indx);
335 339
336 /* Opaque PRF Input 340 /* Opaque PRF Input
337 * http://tools.ietf.org/id/draft-rescorla-tls-opaque-prf-input-00.txt 341 * http://tools.ietf.org/id/draft-rescorla-tls-opaque-prf-input-00.txt
@@ -342,10 +346,11 @@ extern "C"
342 size_t len, unsigned char *data); 346 size_t len, unsigned char *data);
343 347
344 typedef int (*MHD_gnutls_oprfi_callback_func) (MHD_gtls_session_t session, 348 typedef int (*MHD_gnutls_oprfi_callback_func) (MHD_gtls_session_t session,
345 void *userdata, 349 void *userdata,
346 size_t oprfi_len, 350 size_t oprfi_len,
347 const unsigned char *in_oprfi, 351 const unsigned char
348 unsigned char *out_oprfi); 352 *in_oprfi,
353 unsigned char *out_oprfi);
349 354
350 void 355 void
351 MHD_gtls_oprfi_enable_server (MHD_gtls_session_t session, 356 MHD_gtls_oprfi_enable_server (MHD_gtls_session_t session,
@@ -362,32 +367,35 @@ extern "C"
362 (MHD_gnutls_supplemental_data_format_type_t type); 367 (MHD_gnutls_supplemental_data_format_type_t type);
363 368
364 int MHD__gnutls_cipher_set_priority (MHD_gtls_session_t session, 369 int MHD__gnutls_cipher_set_priority (MHD_gtls_session_t session,
365 const int *list); 370 const int *list);
366 int MHD__gnutls_mac_set_priority (MHD_gtls_session_t session, 371 int MHD__gnutls_mac_set_priority (MHD_gtls_session_t session,
367 const int *list); 372 const int *list);
368 int MHD__gnutls_compression_set_priority (MHD_gtls_session_t session, 373 int MHD__gnutls_compression_set_priority (MHD_gtls_session_t session,
369 const int *list); 374 const int *list);
370 int MHD__gnutls_kx_set_priority (MHD_gtls_session_t session, 375 int MHD__gnutls_kx_set_priority (MHD_gtls_session_t session,
371 const int *list); 376 const int *list);
372 int MHD__gnutls_protocol_set_priority (MHD_gtls_session_t session, 377 int MHD__gnutls_protocol_set_priority (MHD_gtls_session_t session,
373 const int *list); 378 const int *list);
374 int MHD__gnutls_certificate_type_set_priority (MHD_gtls_session_t session, 379 int MHD__gnutls_certificate_type_set_priority (MHD_gtls_session_t session,
375 const int *list); 380 const int *list);
376 381
377 int MHD_tls_set_default_priority (MHD_gnutls_priority_t *, const char *priority, 382 int MHD_tls_set_default_priority (MHD_gnutls_priority_t *,
383 const char *priority,
378 const char **err_pos); 384 const char **err_pos);
379 void MHD__gnutls_priority_deinit (MHD_gnutls_priority_t); 385 void MHD__gnutls_priority_deinit (MHD_gnutls_priority_t);
380 386
381 int MHD__gnutls_priority_set (MHD_gtls_session_t session, MHD_gnutls_priority_t); 387 int MHD__gnutls_priority_set (MHD_gtls_session_t session,
388 MHD_gnutls_priority_t);
382 int MHD__gnutls_priority_set_direct (MHD_gtls_session_t session, 389 int MHD__gnutls_priority_set_direct (MHD_gtls_session_t session,
383 const char *priority, 390 const char *priority,
384 const char **err_pos); 391 const char **err_pos);
385 392
386/* get the currently used protocol version */ 393/* get the currently used protocol version */
387 enum MHD_GNUTLS_Protocol MHD__gnutls_protocol_get_version (MHD_gtls_session_t 394 enum MHD_GNUTLS_Protocol
388 session); 395 MHD__gnutls_protocol_get_version (MHD_gtls_session_t session);
389 396
390 const char *MHD__gnutls_protocol_get_name (enum MHD_GNUTLS_Protocol version); 397 const char *MHD__gnutls_protocol_get_name (enum MHD_GNUTLS_Protocol
398 version);
391 399
392/* 400/*
393 * get/set session 401 * get/set session
@@ -412,13 +420,14 @@ extern "C"
412 420
413 int MHD_gtls_session_is_resumed (MHD_gtls_session_t session); 421 int MHD_gtls_session_is_resumed (MHD_gtls_session_t session);
414 422
415 typedef int (*MHD_gnutls_handshake_post_client_hello_func) (MHD_gtls_session_t); 423 typedef
424 int (*MHD_gnutls_handshake_post_client_hello_func) (MHD_gtls_session_t);
416 void 425 void
417 MHD__gnutls_handshake_set_post_client_hello_function (MHD_gtls_session_t, 426 MHD__gnutls_handshake_set_post_client_hello_function (MHD_gtls_session_t,
418 MHD_gnutls_handshake_post_client_hello_func); 427 MHD_gnutls_handshake_post_client_hello_func);
419 428
420 void MHD__gnutls_handshake_set_max_packet_length (MHD_gtls_session_t session, 429 void MHD__gnutls_handshake_set_max_packet_length (MHD_gtls_session_t
421 size_t max); 430 session, size_t max);
422 431
423/* 432/*
424 * Functions for setting/clearing credentials 433 * Functions for setting/clearing credentials
@@ -429,8 +438,8 @@ extern "C"
429 * cred is a structure defined by the kx algorithm 438 * cred is a structure defined by the kx algorithm
430 */ 439 */
431 int MHD__gnutls_credentials_set (MHD_gtls_session_t session, 440 int MHD__gnutls_credentials_set (MHD_gtls_session_t session,
432 enum MHD_GNUTLS_CredentialsType type, 441 enum MHD_GNUTLS_CredentialsType type,
433 void *cred); 442 void *cred);
434 443
435/* Credential structures - used in MHD__gnutls_credentials_set(); */ 444/* Credential structures - used in MHD__gnutls_credentials_set(); */
436 struct MHD_gtls_certificate_credentials_st; 445 struct MHD_gtls_certificate_credentials_st;
@@ -453,12 +462,13 @@ extern "C"
453 462
454 void 463 void
455 MHD__gnutls_anon_set_server_dh_params (MHD_gtls_anon_server_credentials_t 464 MHD__gnutls_anon_set_server_dh_params (MHD_gtls_anon_server_credentials_t
456 res, 465 res,
457 MHD_gtls_dh_params_t dh_params); 466 MHD_gtls_dh_params_t dh_params);
458 467
459 void 468 void
460 MHD__gnutls_anon_set_server_params_function 469 MHD__gnutls_anon_set_server_params_function
461 (MHD_gtls_anon_server_credentials_t res, MHD_gnutls_params_function * func); 470 (MHD_gtls_anon_server_credentials_t res,
471 MHD_gnutls_params_function * func);
462 472
463 void 473 void
464 MHD__gnutls_anon_free_client_credentials 474 MHD__gnutls_anon_free_client_credentials
@@ -468,10 +478,10 @@ extern "C"
468 (MHD_gtls_anon_client_credentials_t * sc); 478 (MHD_gtls_anon_client_credentials_t * sc);
469 479
470 void MHD__gnutls_certificate_free_credentials (MHD_gtls_cert_credentials_t 480 void MHD__gnutls_certificate_free_credentials (MHD_gtls_cert_credentials_t
471 sc); 481 sc);
472 int 482 int
473 MHD__gnutls_certificate_allocate_credentials (MHD_gtls_cert_credentials_t 483 MHD__gnutls_certificate_allocate_credentials (MHD_gtls_cert_credentials_t
474 * res); 484 * res);
475 485
476 void MHD__gnutls_certificate_free_keys (MHD_gtls_cert_credentials_t sc); 486 void MHD__gnutls_certificate_free_keys (MHD_gtls_cert_credentials_t sc);
477 void MHD__gnutls_certificate_free_cas (MHD_gtls_cert_credentials_t sc); 487 void MHD__gnutls_certificate_free_cas (MHD_gtls_cert_credentials_t sc);
@@ -479,50 +489,60 @@ extern "C"
479 void MHD__gnutls_certificate_free_crls (MHD_gtls_cert_credentials_t sc); 489 void MHD__gnutls_certificate_free_crls (MHD_gtls_cert_credentials_t sc);
480 490
481 void MHD__gnutls_certificate_set_dh_params (MHD_gtls_cert_credentials_t res, 491 void MHD__gnutls_certificate_set_dh_params (MHD_gtls_cert_credentials_t res,
482 MHD_gtls_dh_params_t dh_params); 492 MHD_gtls_dh_params_t dh_params);
483 void 493 void
484 MHD__gnutls_certificate_set_rsa_export_params (MHD_gtls_cert_credentials_t 494 MHD__gnutls_certificate_set_rsa_export_params (MHD_gtls_cert_credentials_t
485 res, 495 res,
486 MHD_gtls_rsa_params_t 496 MHD_gtls_rsa_params_t
487 rsa_params); 497 rsa_params);
488 void MHD__gnutls_certificate_set_verify_flags (MHD_gtls_cert_credentials_t 498 void MHD__gnutls_certificate_set_verify_flags (MHD_gtls_cert_credentials_t
489 res, unsigned int flags); 499 res, unsigned int flags);
490 void MHD__gnutls_certificate_set_verify_limits (MHD_gtls_cert_credentials_t 500 void MHD__gnutls_certificate_set_verify_limits (MHD_gtls_cert_credentials_t
491 res, unsigned int max_bits, 501 res, unsigned int max_bits,
492 unsigned int max_depth); 502 unsigned int max_depth);
493 503
494 int MHD__gnutls_certificate_set_x509_trust_file (MHD_gtls_cert_credentials_t 504 int MHD__gnutls_certificate_set_x509_trust_file (MHD_gtls_cert_credentials_t
495 res, const char *CAFILE, 505 res, const char *CAFILE,
496 MHD_gnutls_x509_crt_fmt_t type); 506 MHD_gnutls_x509_crt_fmt_t
507 type);
497 int MHD__gnutls_certificate_set_x509_trust_mem (MHD_gtls_cert_credentials_t 508 int MHD__gnutls_certificate_set_x509_trust_mem (MHD_gtls_cert_credentials_t
498 res, 509 res,
499 const MHD_gnutls_datum_t * CA, 510 const MHD_gnutls_datum_t *
500 MHD_gnutls_x509_crt_fmt_t type); 511 CA,
512 MHD_gnutls_x509_crt_fmt_t
513 type);
501 514
502 int MHD__gnutls_certificate_set_x509_crl_file (MHD_gtls_cert_credentials_t 515 int MHD__gnutls_certificate_set_x509_crl_file (MHD_gtls_cert_credentials_t
503 res, const char *crlfile, 516 res, const char *crlfile,
504 MHD_gnutls_x509_crt_fmt_t type); 517 MHD_gnutls_x509_crt_fmt_t
518 type);
505 int MHD__gnutls_certificate_set_x509_crl_mem (MHD_gtls_cert_credentials_t 519 int MHD__gnutls_certificate_set_x509_crl_mem (MHD_gtls_cert_credentials_t
506 res, 520 res,
507 const MHD_gnutls_datum_t * CRL, 521 const MHD_gnutls_datum_t *
508 MHD_gnutls_x509_crt_fmt_t type); 522 CRL,
523 MHD_gnutls_x509_crt_fmt_t
524 type);
509 525
510 /* 526 /*
511 * CERTFILE is an x509 certificate in PEM form. 527 * CERTFILE is an x509 certificate in PEM form.
512 * KEYFILE is a pkcs-1 private key in PEM form (for RSA keys). 528 * KEYFILE is a pkcs-1 private key in PEM form (for RSA keys).
513 */ 529 */
514 int MHD__gnutls_certificate_set_x509_key_file (MHD_gtls_cert_credentials_t 530 int MHD__gnutls_certificate_set_x509_key_file (MHD_gtls_cert_credentials_t
515 res, const char *CERTFILE, 531 res, const char *CERTFILE,
516 const char *KEYFILE, 532 const char *KEYFILE,
517 MHD_gnutls_x509_crt_fmt_t type); 533 MHD_gnutls_x509_crt_fmt_t
534 type);
518 int MHD__gnutls_certificate_set_x509_key_mem (MHD_gtls_cert_credentials_t 535 int MHD__gnutls_certificate_set_x509_key_mem (MHD_gtls_cert_credentials_t
519 res, 536 res,
520 const MHD_gnutls_datum_t * CERT, 537 const MHD_gnutls_datum_t *
521 const MHD_gnutls_datum_t * KEY, 538 CERT,
522 MHD_gnutls_x509_crt_fmt_t type); 539 const MHD_gnutls_datum_t *
540 KEY,
541 MHD_gnutls_x509_crt_fmt_t
542 type);
523 543
524 void MHD__gnutls_certificate_send_x509_rdn_sequence (MHD_gtls_session_t 544 void MHD__gnutls_certificate_send_x509_rdn_sequence (MHD_gtls_session_t
525 session, int status); 545 session, int status);
526 546
527/* 547/*
528 * New functions to allow setting already parsed X.509 stuff. 548 * New functions to allow setting already parsed X.509 stuff.
@@ -558,7 +578,8 @@ extern "C"
558 typedef void *(*MHD_gnutls_realloc_function) (void *, size_t); 578 typedef void *(*MHD_gnutls_realloc_function) (void *, size_t);
559 579
560 extern void 580 extern void
561 MHD_gtls_global_set_mem_functions (MHD_gnutls_alloc_function gt_alloc_func, 581 MHD_gtls_global_set_mem_functions (MHD_gnutls_alloc_function
582 gt_alloc_func,
562 MHD_gnutls_alloc_function 583 MHD_gnutls_alloc_function
563 gt_secure_alloc_func, 584 gt_secure_alloc_func,
564 MHD_gnutls_is_secure_function 585 MHD_gnutls_is_secure_function
@@ -586,14 +607,14 @@ extern "C"
586 int MHD__gnutls_dh_params_init (MHD_gtls_dh_params_t * dh_params); 607 int MHD__gnutls_dh_params_init (MHD_gtls_dh_params_t * dh_params);
587 void MHD__gnutls_dh_params_deinit (MHD_gtls_dh_params_t dh_params); 608 void MHD__gnutls_dh_params_deinit (MHD_gtls_dh_params_t dh_params);
588 int MHD__gnutls_dh_params_generate2 (MHD_gtls_dh_params_t params, 609 int MHD__gnutls_dh_params_generate2 (MHD_gtls_dh_params_t params,
589 unsigned int bits); 610 unsigned int bits);
590 611
591 612
592/* RSA params */ 613/* RSA params */
593 int MHD__gnutls_rsa_params_init (MHD_gtls_rsa_params_t * rsa_params); 614 int MHD__gnutls_rsa_params_init (MHD_gtls_rsa_params_t * rsa_params);
594 void MHD__gnutls_rsa_params_deinit (MHD_gtls_rsa_params_t rsa_params); 615 void MHD__gnutls_rsa_params_deinit (MHD_gtls_rsa_params_t rsa_params);
595 int MHD__gnutls_rsa_params_generate2 (MHD_gtls_rsa_params_t params, 616 int MHD__gnutls_rsa_params_generate2 (MHD_gtls_rsa_params_t params,
596 unsigned int bits); 617 unsigned int bits);
597 618
598 619
599/* 620/*
@@ -601,21 +622,21 @@ extern "C"
601 */ 622 */
602 typedef ssize_t (*MHD_gtls_pull_func) (MHD_gnutls_transport_ptr_t, void *, 623 typedef ssize_t (*MHD_gtls_pull_func) (MHD_gnutls_transport_ptr_t, void *,
603 size_t); 624 size_t);
604 typedef ssize_t (*MHD_gtls_push_func) (MHD_gnutls_transport_ptr_t, const void *, 625 typedef ssize_t (*MHD_gtls_push_func) (MHD_gnutls_transport_ptr_t,
605 size_t); 626 const void *, size_t);
606 void MHD__gnutls_transport_set_ptr (MHD_gtls_session_t session, 627 void MHD__gnutls_transport_set_ptr (MHD_gtls_session_t session,
607 MHD_gnutls_transport_ptr_t ptr); 628 MHD_gnutls_transport_ptr_t ptr);
608 void MHD__gnutls_transport_set_ptr2 (MHD_gtls_session_t session, 629 void MHD__gnutls_transport_set_ptr2 (MHD_gtls_session_t session,
609 MHD_gnutls_transport_ptr_t recv_ptr, 630 MHD_gnutls_transport_ptr_t recv_ptr,
610 MHD_gnutls_transport_ptr_t send_ptr); 631 MHD_gnutls_transport_ptr_t send_ptr);
611 632
612 void MHD__gnutls_transport_set_lowat (MHD_gtls_session_t session, int num); 633 void MHD__gnutls_transport_set_lowat (MHD_gtls_session_t session, int num);
613 634
614 635
615 void MHD__gnutls_transport_set_push_function (MHD_gtls_session_t session, 636 void MHD__gnutls_transport_set_push_function (MHD_gtls_session_t session,
616 MHD_gtls_push_func push_func); 637 MHD_gtls_push_func push_func);
617 void MHD__gnutls_transport_set_pull_function (MHD_gtls_session_t session, 638 void MHD__gnutls_transport_set_pull_function (MHD_gtls_session_t session,
618 MHD_gtls_pull_func pull_func); 639 MHD_gtls_pull_func pull_func);
619 640
620 void MHD__gnutls_transport_set_errno (MHD_gtls_session_t session, int err); 641 void MHD__gnutls_transport_set_errno (MHD_gtls_session_t session, int err);
621 void MHD__gnutls_transport_set_global_errno (int err); 642 void MHD__gnutls_transport_set_global_errno (int err);
@@ -630,8 +651,8 @@ extern "C"
630 * this function returns the hash of the given data. 651 * this function returns the hash of the given data.
631 */ 652 */
632 int MHD__gnutls_fingerprint (enum MHD_GNUTLS_HashAlgorithm algo, 653 int MHD__gnutls_fingerprint (enum MHD_GNUTLS_HashAlgorithm algo,
633 const MHD_gnutls_datum_t * data, void *result, 654 const MHD_gnutls_datum_t * data, void *result,
634 size_t * result_size); 655 size_t * result_size);
635 656
636 typedef enum MHD_gnutls_x509_subject_alt_name_t 657 typedef enum MHD_gnutls_x509_subject_alt_name_t
637 { 658 {
@@ -664,21 +685,19 @@ extern "C"
664 unsigned int deinit_all; /* if non zero all keys will be deinited */ 685 unsigned int deinit_all; /* if non zero all keys will be deinited */
665 } MHD_gnutls_retr_st; 686 } MHD_gnutls_retr_st;
666 687
667 typedef int MHD_gnutls_certificate_client_retrieve_function (MHD_gtls_session_t, 688 typedef int
668 const 689 MHD_gnutls_certificate_client_retrieve_function (MHD_gtls_session_t,
669 MHD_gnutls_datum_t * 690 const MHD_gnutls_datum_t
670 req_ca_rdn, 691 * req_ca_rdn, int nreqs,
671 int nreqs, 692 const enum
672 const 693 MHD_GNUTLS_PublicKeyAlgorithm
673 enum 694 *pk_algos,
674 MHD_GNUTLS_PublicKeyAlgorithm 695 int pk_algos_length,
675 *pk_algos, 696 MHD_gnutls_retr_st *);
676 int 697
677 pk_algos_length, 698 typedef int
678 MHD_gnutls_retr_st *); 699 MHD_gnutls_certificate_server_retrieve_function (MHD_gtls_session_t,
679 700 MHD_gnutls_retr_st *);
680 typedef int MHD_gnutls_certificate_server_retrieve_function (MHD_gtls_session_t,
681 MHD_gnutls_retr_st *);
682 701
683 /* 702 /*
684 * Functions that allow auth_info_t structures handling 703 * Functions that allow auth_info_t structures handling
@@ -694,16 +713,16 @@ extern "C"
694 * DH 713 * DH
695 */ 714 */
696 void MHD__gnutls_dh_set_prime_bits (MHD_gtls_session_t session, 715 void MHD__gnutls_dh_set_prime_bits (MHD_gtls_session_t session,
697 unsigned int bits); 716 unsigned int bits);
698 int MHD__gnutls_dh_get_secret_bits (MHD_gtls_session_t session); 717 int MHD__gnutls_dh_get_secret_bits (MHD_gtls_session_t session);
699 int MHD__gnutls_dh_get_peers_public_bits (MHD_gtls_session_t session); 718 int MHD__gnutls_dh_get_peers_public_bits (MHD_gtls_session_t session);
700 int MHD__gnutls_dh_get_prime_bits (MHD_gtls_session_t session); 719 int MHD__gnutls_dh_get_prime_bits (MHD_gtls_session_t session);
701 720
702 int MHD__gnutls_dh_get_group (MHD_gtls_session_t session, 721 int MHD__gnutls_dh_get_group (MHD_gtls_session_t session,
703 MHD_gnutls_datum_t * raw_gen, 722 MHD_gnutls_datum_t * raw_gen,
704 MHD_gnutls_datum_t * raw_prime); 723 MHD_gnutls_datum_t * raw_prime);
705 int MHD__gnutls_dh_get_pubkey (MHD_gtls_session_t session, 724 int MHD__gnutls_dh_get_pubkey (MHD_gtls_session_t session,
706 MHD_gnutls_datum_t * raw_key); 725 MHD_gnutls_datum_t * raw_key);
707 726
708 /* 727 /*
709 * RSA 728 * RSA
@@ -715,17 +734,18 @@ extern "C"
715 734
716 /* External signing callback. Experimental. */ 735 /* External signing callback. Experimental. */
717 typedef int (*MHD_gnutls_sign_func) (MHD_gtls_session_t session, 736 typedef int (*MHD_gnutls_sign_func) (MHD_gtls_session_t session,
718 void *userdata, 737 void *userdata,
719 enum MHD_GNUTLS_CertificateType cert_type, 738 enum MHD_GNUTLS_CertificateType
720 const MHD_gnutls_datum_t * cert, 739 cert_type,
721 const MHD_gnutls_datum_t * hash, 740 const MHD_gnutls_datum_t * cert,
722 MHD_gnutls_datum_t * signature); 741 const MHD_gnutls_datum_t * hash,
742 MHD_gnutls_datum_t * signature);
723 743
724 void MHD_gtls_sign_callback_set (MHD_gtls_session_t session, 744 void MHD_gtls_sign_callback_set (MHD_gtls_session_t session,
725 MHD_gnutls_sign_func sign_func, 745 MHD_gnutls_sign_func sign_func,
726 void *userdata); 746 void *userdata);
727 MHD_gnutls_sign_func MHD_gtls_sign_callback_get (MHD_gtls_session_t session, 747 MHD_gnutls_sign_func MHD_gtls_sign_callback_get (MHD_gtls_session_t session,
728 void **userdata); 748 void **userdata);
729 749
730 /* These are set on the credentials structure. 750 /* These are set on the credentials structure.
731 */ 751 */
@@ -742,11 +762,11 @@ extern "C"
742 762
743 /* get data from the session */ 763 /* get data from the session */
744 const MHD_gnutls_datum_t *MHD_gtls_certificate_get_peers (MHD_gtls_session_t 764 const MHD_gnutls_datum_t *MHD_gtls_certificate_get_peers (MHD_gtls_session_t
745 session, 765 session,
746 unsigned int 766 unsigned int
747 *list_size); 767 *list_size);
748 const MHD_gnutls_datum_t *MHD_gtls_certificate_get_ours (MHD_gtls_session_t 768 const MHD_gnutls_datum_t *MHD_gtls_certificate_get_ours (MHD_gtls_session_t
749 session); 769 session);
750 770
751 time_t MHD_gtls_certificate_activation_time_peers (MHD_gtls_session_t 771 time_t MHD_gtls_certificate_activation_time_peers (MHD_gtls_session_t
752 session); 772 session);
@@ -762,8 +782,8 @@ extern "C"
762 int MHD_gtls_certificate_verify_peers (MHD_gtls_session_t session); 782 int MHD_gtls_certificate_verify_peers (MHD_gtls_session_t session);
763 783
764 int MHD_gtls_pem_base64_encode (const char *msg, 784 int MHD_gtls_pem_base64_encode (const char *msg,
765 const MHD_gnutls_datum_t * data, char *result, 785 const MHD_gnutls_datum_t * data,
766 size_t * result_size); 786 char *result, size_t * result_size);
767 int MHD_gtls_pem_base64_decode (const char *header, 787 int MHD_gtls_pem_base64_decode (const char *header,
768 const MHD_gnutls_datum_t * b64_data, 788 const MHD_gnutls_datum_t * b64_data,
769 unsigned char *result, 789 unsigned char *result,