summaryrefslogtreecommitdiff
path: root/frontends/kolibrios/kolibri_http.c
blob: ddfd911e42df892b9e1c213d687731560c3ef139 (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
32
33
34
35
#include "kolibri_http.h"

int kolibri_http_init(void)
{
  int asm_init_status = init_network_asm();

  if(asm_init_status == 0)
    return 0;
  else
    return 1;
}

void http_send(struct http_msg *handle, char *data, int remaining_length) {

  int sent = 0;
  int total_sent = 0;
  int retries_left = 5;

  while(remaining_length > 0) {
    sent = http_send_asm(handle, data + total_sent, remaining_length);

    if(sent == -1) {
      --retries_left;

      if(retries_left)
	continue;
      else {
	debug_board_write_str("ERROR: HTTP LIBRARY : Could not send data.\n");
      }
    }

    remaining_length -= sent;
    total_sent += sent;
  }
}