[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r21915 - gnunet/src/gns
From: |
gnunet |
Subject: |
[GNUnet-SVN] r21915 - gnunet/src/gns |
Date: |
Tue, 12 Jun 2012 15:33:24 +0200 |
Author: schanzen
Date: 2012-06-12 15:33:24 +0200 (Tue, 12 Jun 2012)
New Revision: 21915
Modified:
gnunet/src/gns/gnunet-gns-proxy.c
Log:
-fixes
Modified: gnunet/src/gns/gnunet-gns-proxy.c
===================================================================
--- gnunet/src/gns/gnunet-gns-proxy.c 2012-06-12 12:58:35 UTC (rev 21914)
+++ gnunet/src/gns/gnunet-gns-proxy.c 2012-06-12 13:33:24 UTC (rev 21915)
@@ -564,7 +564,7 @@
if (ctask->download_successful &&
(ctask->buf_status == BUF_WAIT_FOR_CURL))
{
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ GNUNET_log (GNUNET_ERROR_TYPE_INFO,
"MHD: sending response for %s\n", ctask->url);
ctask->download_in_progress = GNUNET_NO;
curl_multi_remove_handle (curl_multi, ctask->curl);
@@ -577,7 +577,7 @@
if (ctask->download_error &&
(ctask->buf_status == BUF_WAIT_FOR_CURL))
{
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ GNUNET_log (GNUNET_ERROR_TYPE_INFO,
"MHD: sending error response\n");
ctask->download_in_progress = GNUNET_NO;
curl_multi_remove_handle (curl_multi, ctask->curl);
@@ -1017,6 +1017,8 @@
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"SSL target server: %s\n", ssl_ip);
sprintf (resolvename, "%s:%d:%s", ctask->leho, HTTPS_PORT, ssl_ip);
+ GNUNET_log (GNUNET_ERROR_TYPE_INFO,
+ "Curl resolve: %s\n", resolvename);
ctask->resolver = curl_slist_append ( ctask->resolver, resolvename);
curl_easy_setopt (ctask->curl, CURLOPT_RESOLVE, ctask->resolver);
sprintf (curlurl, "https://%s%s", ctask->leho, ctask->url);
@@ -1121,7 +1123,7 @@
struct MhdHttpList* hd = cls;
const char* page = "<html><head><title>gnoxy</title>"\
"</head><body>cURL fail</body></html>";
- struct MHD_Response *response;
+ struct MHD_Response *response = NULL;
char host[265];
char curlurl[512];
int ret = MHD_YES;
@@ -1152,10 +1154,11 @@
/* Do cURL */
ctask = GNUNET_malloc (sizeof (struct ProxyCurlTask));
ctask->mhd = hd;
- ctask->curl = curl_easy_init();
if (curl_multi == NULL)
curl_multi = curl_multi_init ();
+
+ ctask->curl = curl_easy_init();
if ((ctask->curl == NULL) || (curl_multi == NULL))
{
@@ -1169,7 +1172,12 @@
GNUNET_free (ctask);
return ret;
}
-
+
+ ctask->prev = NULL;
+ ctask->next = NULL;
+ ctask->headers = NULL;
+ ctask->resolver = NULL;
+ ctask->buffer_ptr = NULL;
ctask->download_in_progress = GNUNET_YES;
ctask->download_successful = GNUNET_NO;
ctask->buf_status = BUF_WAIT_FOR_CURL;
@@ -1184,13 +1192,16 @@
curl_easy_setopt (ctask->curl, CURLOPT_MAXREDIRS, 4);
/* no need to abort if the above failed */
if (GNUNET_NO == ctask->mhd->is_ssl)
+ {
sprintf (curlurl, "http://%s%s", host, url);
+ curl_easy_setopt (ctask->curl, CURLOPT_URL, curlurl);
+ GNUNET_log (GNUNET_ERROR_TYPE_INFO,
+ "Adding new curl task for %s\n", curlurl);
+ }
strcpy (ctask->host, host);
strcpy (ctask->url, url);
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Adding new curl task for %s\n", curlurl);
- curl_easy_setopt (ctask->curl, CURLOPT_URL, curlurl);
+ //curl_easy_setopt (ctask->curl, CURLOPT_URL, curlurl);
curl_easy_setopt (ctask->curl, CURLOPT_FAILONERROR, 1);
curl_easy_setopt (ctask->curl, CURLOPT_CONNECTTIMEOUT, 600L);
curl_easy_setopt (ctask->curl, CURLOPT_TIMEOUT, 600L);
@@ -1202,7 +1213,8 @@
//download_prepare (ctask);
//curl_download_prepare ();
- response = MHD_create_response_from_callback (-1, -1,
+ response = MHD_create_response_from_callback (MHD_SIZE_UNKNOWN,
+ MHD_SIZE_UNKNOWN,
&mhd_content_cb,
ctask,
&mhd_content_free);
@@ -1542,28 +1554,27 @@
* @return data
*/
static char*
-load_file (const char* filename)
+load_file (const char* filename, unsigned int* size)
{
FILE *fp;
char *buffer;
- long size;
- size = get_file_size (filename);
- if (size == 0)
+ *size = get_file_size (filename);
+ if (*size == 0)
return NULL;
fp = fopen (filename, "rb");
if (!fp)
return NULL;
- buffer = GNUNET_malloc (size);
+ buffer = GNUNET_malloc (*size);
if (!buffer)
{
fclose (fp);
return NULL;
}
- if (size != fread (buffer, 1, size, fp))
+ if (*size != fread (buffer, 1, *size, fp))
{
GNUNET_free (buffer);
buffer = NULL;
@@ -1585,10 +1596,10 @@
load_key_from_file (gnutls_x509_privkey_t key, char* keyfile)
{
gnutls_datum_t key_data;
+ key_data.data = NULL;
int ret;
- key_data.data = (unsigned char*)load_file (keyfile);
- key_data.size = strlen ((char*)key_data.data);
+ key_data.data = (unsigned char*)load_file (keyfile, &key_data.size);
ret = gnutls_x509_privkey_import (key, &key_data,
GNUTLS_X509_FMT_PEM);
@@ -1613,10 +1624,10 @@
load_cert_from_file (gnutls_x509_crt_t crt, char* certfile)
{
gnutls_datum_t cert_data;
+ cert_data.data = NULL;
int ret;
- cert_data.data = (unsigned char*)load_file (certfile);
- cert_data.size = strlen ((char*)cert_data.data);
+ cert_data.data = (unsigned char*)load_file (certfile, &cert_data.size);
ret = gnutls_x509_crt_import (crt, &cert_data,
GNUTLS_X509_FMT_PEM);
@@ -2152,6 +2163,8 @@
struct ProxyCurlTask *ctask;
struct ProxyCurlTask *ctask_tmp;
+ gnutls_global_deinit ();
+
if (GNUNET_SCHEDULER_NO_TASK != curl_download_task)
{
GNUNET_SCHEDULER_cancel (curl_download_task);
@@ -2352,6 +2365,8 @@
char* cafile_cfg = NULL;
char* cafile;
+ curl_multi = NULL;
+
GNUNET_log (GNUNET_ERROR_TYPE_INFO,
"Loading CA\n");
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r21915 - gnunet/src/gns,
gnunet <=