[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r11594 - gnunet/src/transport
From: |
gnunet |
Subject: |
[GNUnet-SVN] r11594 - gnunet/src/transport |
Date: |
Tue, 1 Jun 2010 17:20:13 +0200 |
Author: wachs
Date: 2010-06-01 17:20:13 +0200 (Tue, 01 Jun 2010)
New Revision: 11594
Modified:
gnunet/src/transport/test_plugin_transport_http.c
Log:
Modified: gnunet/src/transport/test_plugin_transport_http.c
===================================================================
--- gnunet/src/transport/test_plugin_transport_http.c 2010-06-01 14:49:19 UTC
(rev 11593)
+++ gnunet/src/transport/test_plugin_transport_http.c 2010-06-01 15:20:13 UTC
(rev 11594)
@@ -168,6 +168,15 @@
*/
size_t data_size;
+ unsigned char buf[2048];
+
+ /**
+ * amount of bytes we recieved
+ */
+ size_t pos;
+
+ size_t size;
+
};
struct Plugin_Address * addr_head;
@@ -353,25 +362,34 @@
static size_t copyBuffer (void *ptr, size_t size, size_t nmemb, void *ctx)
{
- struct HTTP_Message *cbc = ctx;
+ struct HTTP_Transfer * res = (struct HTTP_Transfer *) ctx;
- if (cbc->pos + size * nmemb > cbc->size)
+ res->data_size = size * nmemb;
+
+ if (res->pos + size * nmemb > res->size)
return 0; /* overflow */
- memcpy (&cbc->buf[cbc->pos], ptr, size * nmemb);
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,"Send completed. %s\n",cbc->buf);
- cbc->pos += size * nmemb;
+ memcpy (&res->buf[res->pos], ptr, size * nmemb);
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,"Send completed. %s\n",res->buf);
+ res->pos += size * nmemb;
return size * nmemb;
}
static size_t header_function( void *ptr, size_t size, size_t nmemb, void
*stream)
{
+ struct HTTP_Transfer * res = (struct HTTP_Transfer *) stream;
char * tmp;
unsigned int len = size * nmemb;
+
tmp = GNUNET_malloc ( len+1 );
memcpy(tmp,ptr,len);
- //if (tmp[len-1]!='\0')
- // tmp[len]= '\0';
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Header: %u :`%s'\n",len,tmp);
+ if (tmp[len-2] == 13)
+ tmp[len-2]= '\0';
+ if (0==strcmp (tmp,"HTTP/1.1 404 Not Found"))
+ {
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "404\n");
+ res->http_result_code=404;
+ }
+
GNUNET_free (tmp);
return size * nmemb;
}
@@ -526,7 +544,7 @@
curl_easy_setopt (curl_handle, CURLOPT_HEADERFUNCTION, &header_function);
curl_easy_setopt (curl_handle, CURLOPT_WRITEHEADER, result);
curl_easy_setopt (curl_handle, CURLOPT_WRITEFUNCTION, ©Buffer);
- curl_easy_setopt (curl_handle, CURLOPT_WRITEDATA, msg);
+ curl_easy_setopt (curl_handle, CURLOPT_WRITEDATA, result);
curl_easy_setopt (curl_handle, CURLOPT_READFUNCTION, &putBuffer);
curl_easy_setopt (curl_handle, CURLOPT_READDATA, msg);
curl_easy_setopt(curl_handle, CURLOPT_INFILESIZE_LARGE, (curl_off_t)
msg->len);
@@ -808,8 +826,8 @@
msg->size = 2048;
msg->pos = 0;
msg->buf = GNUNET_malloc (2048);
+ no_ident.size=2048;
-
res = send_data (msg, &no_ident, "http://localhost:12389/");
/* testing finished, shutting down */
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r11594 - gnunet/src/transport,
gnunet <=