/* static void strip_newline(char* str) { char* dst = str; char* src = str; while(*src != '\0') { if(*src != '\n' && *src != '\r') { *dst = *src; ++dst; } ++src; } } static void cut_at_newline(char* str) { while(*str != '\0') { if(*str == '\n' || *str == '\r') { *str = '\0'; return; } ++str; } } */ static enum network_result network_tcp_send_all(struct network_socket* sock, void* data, uint num_bytes) { enum network_result res; uint num_bytes_sent_total = 0; do { uint num_bytes_sent = 0; res = network_tcp_send(sock, data, num_bytes, &num_bytes_sent); num_bytes_sent_total += num_bytes_sent; } while(res == NETWORK_RESULT_OK && num_bytes_sent_total < num_bytes); return res; }
int network_tcp_send(TCPsocket tcp, std::string str) { return network_tcp_send(tcp, str.c_str(), str.length()+1); }