summaryrefslogtreecommitdiff
path: root/libsoup/soup-ssl.h
blob: f4e3eab1e8f6bb23c60465ece1537e76d495f010 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
/*
 * Copyright (C) 2000-2003, Ximian, Inc.
 */

#ifndef SOUP_SSL_H
#define SOUP_SSL_H 1

#include <glib.h>

typedef enum {
	SOUP_SSL_TYPE_CLIENT = 0,
	SOUP_SSL_TYPE_SERVER
} SoupSSLType;

typedef struct SoupSSLCredentials SoupSSLCredentials;

SoupSSLCredentials *soup_ssl_get_client_credentials  (const char         *ca_file);
void                soup_ssl_free_client_credentials (SoupSSLCredentials *creds);

SoupSSLCredentials *soup_ssl_get_server_credentials  (const char         *cert_file,
						      const char         *key_file);
void                soup_ssl_free_server_credentials (SoupSSLCredentials *creds);

GIOChannel         *soup_ssl_wrap_iochannel          (GIOChannel         *sock,
						      gboolean            non_blocking,
						      SoupSSLType         type,
						      const char         *remote_host,
						      SoupSSLCredentials *creds);

#endif /* SOUP_SSL_H */