comparison libnnchat.c @ 393:318a71f4f57f

Rename some internal variables and add new buffer pointer one.
author Matti Hamalainen <ccr@tnsp.org>
date Thu, 24 May 2012 04:33:21 +0300
parents acea18a741e3
children cabf2233ea39
comparison
equal deleted inserted replaced
392:a21cc444d800 393:318a71f4f57f
356 356
357 void nn_conn_reset(nn_conn_t *conn) 357 void nn_conn_reset(nn_conn_t *conn)
358 { 358 {
359 if (conn != NULL) 359 if (conn != NULL)
360 { 360 {
361 conn->ptr = conn->buf; 361 conn->got_ptr = conn->buf;
362 conn->got = conn->total = 0; 362 conn->got_bytes = conn->total_bytes = 0;
363 } 363 }
364 } 364 }
365
365 366
366 int nn_conn_pull(nn_conn_t *conn) 367 int nn_conn_pull(nn_conn_t *conn)
367 { 368 {
368 int result; 369 int result;
369 struct timeval socktv; 370 struct timeval socktv;
387 return -1; 388 return -1;
388 } 389 }
389 } 390 }
390 else if (FD_ISSET(conn->socket, &tmpfds)) 391 else if (FD_ISSET(conn->socket, &tmpfds))
391 { 392 {
392 conn->got = recv(conn->socket, conn->ptr, NN_CONNBUF_SIZE - conn->total, 0); 393 conn->got_bytes = recv(conn->socket, conn->got_ptr, NN_CONNBUF_SIZE - conn->total_bytes, 0);
393 if (conn->got < 0) 394 if (conn->got_bytes < 0)
394 { 395 {
395 conn->err = nn_get_socket_errno(); 396 conn->err = nn_get_socket_errno();
396 nn_conn_err(conn, "Error in recv: %d, %s\n", conn->err, nn_get_socket_errstr(conn->err)); 397 nn_conn_err(conn, "Error in recv: %d, %s\n", conn->err, nn_get_socket_errstr(conn->err));
397 return -2; 398 return -2;
398 } 399 }
399 else if (conn->got == 0) 400 else if (conn->got_bytes == 0)
400 { 401 {
401 nn_conn_err(conn, "Server closed connection.\n"); 402 nn_conn_err(conn, "Server closed connection.\n");
402 conn->status = NN_CONN_CLOSED; 403 conn->status = NN_CONN_CLOSED;
403 return -3; 404 return -3;
404 } 405 }
405 else 406 else
406 { 407 {
407 /* Handle protocol data */ 408 conn->total_bytes += conn->got_bytes;
408 conn->total += conn->got; 409 conn->got_ptr += conn->got_bytes;
409 conn->ptr += conn->got;
410 return 0; 410 return 0;
411 } 411 }
412 } 412 }
413 413
414 return 1; 414 return 1;
415 } 415 }
416
416 417
417 BOOL nn_conn_check(nn_conn_t *conn) 418 BOOL nn_conn_check(nn_conn_t *conn)
418 { 419 {
419 if (conn == NULL) 420 if (conn == NULL)
420 return FALSE; 421 return FALSE;
421 422
422 return conn->err == 0 && conn->status == NN_CONN_OPEN; 423 return conn->err == 0 && conn->status == NN_CONN_OPEN;
423 } 424 }
424
425 425
426 426
427 BOOL nn_network_init(void) 427 BOOL nn_network_init(void)
428 { 428 {
429 #ifdef __WIN32 429 #ifdef __WIN32