Skip to content

Commit 8ea6156

Browse files
committed
Bump the default response size from 1MB to 10MB
See issue #103
1 parent c02af37 commit 8ea6156

File tree

4 files changed

+12
-0
lines changed

4 files changed

+12
-0
lines changed

googlechat_auth.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,7 @@ googlechat_oauth_refresh_token(GoogleChatAccount *ha)
265265
purple_http_request_set_method(request, "POST");
266266
purple_http_request_header_set(request, "Content-Type", "application/x-www-form-urlencoded");
267267
purple_http_request_set_contents(request, postdata->str, postdata->len);
268+
purple_http_request_set_max_len(request, GOOGLECHAT_MAX_HTTP_RESPONSE_SIZE);
268269

269270
purple_http_request(pc, request, googlechat_oauth_refresh_token_cb, ha);
270271
purple_http_request_unref(request);
@@ -344,6 +345,7 @@ googlechat_oauth_with_code(GoogleChatAccount *ha, const gchar *auth_code)
344345
purple_http_request_set_method(request, "POST");
345346
purple_http_request_header_set(request, "Content-Type", "application/x-www-form-urlencoded");
346347
purple_http_request_set_contents(request, postdata->str, postdata->len);
348+
purple_http_request_set_max_len(request, GOOGLECHAT_MAX_HTTP_RESPONSE_SIZE);
347349

348350
purple_http_request(pc, request, googlechat_oauth_with_code_cb, ha);
349351
purple_http_request_unref(request);
@@ -444,6 +446,7 @@ googlechat_auth_get_dynamite_token(GoogleChatAccount *ha)
444446
g_string_append(postdata, "passcode_present=YES&");
445447
g_string_append(postdata, "response_type=token&");
446448
g_string_append_printf(postdata, "scope=%s&", purple_url_encode("https://www.googleapis.com/auth/dynamite https://www.googleapis.com/auth/drive https://www.googleapis.com/auth/mobiledevicemanagement https://www.googleapis.com/auth/notifications https://www.googleapis.com/auth/supportcontent https://www.googleapis.com/auth/chat.integration https://www.googleapis.com/auth/peopleapi.readonly"));
449+
purple_http_request_set_max_len(request, GOOGLECHAT_MAX_HTTP_RESPONSE_SIZE);
447450

448451
purple_http_request_set_method(request, "POST");
449452
purple_http_request_header_set(request, "Content-Type", "application/x-www-form-urlencoded");
@@ -550,6 +553,7 @@ googlechat_auth_refresh_xsrf_token(GoogleChatAccount *ha)
550553
purple_http_request_set_method(request, "GET");
551554
purple_http_request_header_set(request, "Referer", "https://mail.google.com/");
552555
purple_http_request_header_set_printf(request, "User-Agent", GOOGLECHAT_USER_AGENT);
556+
purple_http_request_set_max_len(request, GOOGLECHAT_MAX_HTTP_RESPONSE_SIZE);
553557

554558
purple_http_request(pc, request, googlechat_auth_refresh_xsrf_token_cb, ha);
555559
purple_http_request_unref(request);

googlechat_connection.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -251,6 +251,7 @@ googlechat_send_stream_event(GoogleChatAccount *ha, StreamEventsRequest *events_
251251
purple_http_request_set_method(request, "POST");
252252
purple_http_request_header_set(request, "Content-Type", "application/x-www-form-urlencoded");
253253
purple_http_request_set_keepalive_pool(request, ha->channel_keepalive_pool);
254+
purple_http_request_set_max_len(request, GOOGLECHAT_MAX_HTTP_RESPONSE_SIZE);
254255

255256
postdata = g_string_new(NULL);
256257
g_string_append(postdata, "count=1&");
@@ -461,6 +462,7 @@ googlechat_longpoll_request(GoogleChatAccount *ha)
461462
purple_http_request_set_timeout(request, -1); // to infinity and beyond!
462463
purple_http_request_set_response_writer(request, googlechat_longpoll_request_content, ha);
463464
purple_http_request_set_keepalive_pool(request, ha->channel_keepalive_pool);
465+
purple_http_request_set_max_len(request, GOOGLECHAT_MAX_HTTP_RESPONSE_SIZE);
464466

465467
googlechat_set_auth_headers(ha, request);
466468

@@ -499,6 +501,7 @@ googlechat_fetch_channel_sid(GoogleChatAccount *ha)
499501
purple_http_request_set_timeout(request, -1); // to infinity and beyond!
500502
purple_http_request_set_keepalive_pool(request, ha->channel_keepalive_pool);
501503
purple_http_request_set_response_writer(request, googlechat_longpoll_request_content, ha);
504+
purple_http_request_set_max_len(request, GOOGLECHAT_MAX_HTTP_RESPONSE_SIZE);
502505

503506
googlechat_set_auth_headers(ha, request);
504507

@@ -536,6 +539,7 @@ googlechat_register_webchannel(GoogleChatAccount *ha)
536539
purple_http_request_set_method(request, "POST");
537540
purple_http_request_header_set(request, "Content-Type", "application/x-protobuf");
538541
purple_http_request_set_keepalive_pool(request, ha->channel_keepalive_pool);
542+
purple_http_request_set_max_len(request, GOOGLECHAT_MAX_HTTP_RESPONSE_SIZE);
539543

540544
googlechat_set_auth_headers(ha, request);
541545

@@ -987,6 +991,7 @@ googlechat_search_users_text(GoogleChatAccount *ha, const gchar *text)
987991
purple_http_request_set_cookie_jar(request, ha->cookie_jar);
988992
purple_http_request_set_contents(request, postdata->str, postdata->len);
989993
purple_http_request_header_set(request, "Content-Type", "application/json+protobuf");
994+
purple_http_request_set_max_len(request, GOOGLECHAT_MAX_HTTP_RESPONSE_SIZE);
990995

991996
gchar *sapisid_auth = googlechat_get_sapisid_auth_header(ha);
992997
if (sapisid_auth) {

googlechat_conversation.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1760,6 +1760,7 @@ googlechat_conversation_send_image_part1_cb(PurpleHttpConnection *connection, Pu
17601760
request = purple_http_request_new(upload_url);
17611761
purple_http_request_set_cookie_jar(request, ha->cookie_jar);
17621762
purple_http_request_set_keepalive_pool(request, ha->api_keepalive_pool);
1763+
purple_http_request_set_max_len(request, GOOGLECHAT_MAX_HTTP_RESPONSE_SIZE);
17631764

17641765
if (is_final_chunk) {
17651766
purple_http_request_header_set(request, "x-goog-upload-command", "upload, finalize");
@@ -1813,6 +1814,7 @@ googlechat_conversation_send_image(GoogleChatAccount *ha, const gchar *conv_id,
18131814
purple_http_request_header_set_printf(request, "x-goog-upload-content-type", "image/%s", purple_image_get_extension(image));
18141815
purple_http_request_header_set(request, "x-goog-upload-file-name", filename);
18151816
purple_http_request_set_keepalive_pool(request, ha->api_keepalive_pool);
1817+
purple_http_request_set_max_len(request, GOOGLECHAT_MAX_HTTP_RESPONSE_SIZE);
18161818

18171819
googlechat_set_auth_headers(ha, request);
18181820
connection = purple_http_request(ha->pc, request, googlechat_conversation_send_image_part1_cb, ha);

libgooglechat.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@
3939
#define GOOGLECHAT_PLUGIN_VERSION "0.1"
4040

4141
#define GOOGLECHAT_BUFFER_DEFAULT_SIZE 4096
42+
#define GOOGLECHAT_MAX_HTTP_RESPONSE_SIZE 10485760 // 10MB
4243

4344
#ifdef ENABLE_NLS
4445
# define GETTEXT_PACKAGE "purple-googlechat"

0 commit comments

Comments
 (0)