Skip to content

Commit 7851f53

Browse files
committed
pkg/lwip: Add DEBUG output to lwip_sock_tcp()
1 parent 68baf60 commit 7851f53

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

pkg/lwip/contrib/sock/tcp/lwip_sock_tcp.c

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@
2424
#include "lwip/api.h"
2525
#include "lwip/opt.h"
2626

27+
#define ENABLE_DEBUG 0
28+
#include "debug.h"
29+
2730
static inline void _tcp_sock_init(sock_tcp_t *sock, struct netconn *conn,
2831
sock_tcp_queue_t *queue)
2932
{
@@ -314,6 +317,9 @@ int sock_tcp_accept(sock_tcp_queue_t *queue, sock_tcp_t **sock,
314317
ssize_t sock_tcp_read(sock_tcp_t *sock, void *data, size_t max_len,
315318
uint32_t timeout)
316319
{
320+
DEBUG("sock_tcp_read(sock, data, max_len=%u, timeout=%" PRIu32 ")\n",
321+
(unsigned)max_len, timeout);
322+
317323
struct pbuf *buf;
318324
ssize_t recvd = 0;
319325
ssize_t res = 0;
@@ -343,6 +349,7 @@ ssize_t sock_tcp_read(sock_tcp_t *sock, void *data, size_t max_len,
343349

344350
if ((timeout == 0) && !mbox_avail(&sock->base.conn->recvmbox.mbox)) {
345351
mutex_unlock(&sock->mutex);
352+
DEBUG_PUTS("sock_tcp_read(): -EAGAIN");
346353
return -EAGAIN;
347354
}
348355

@@ -354,6 +361,7 @@ ssize_t sock_tcp_read(sock_tcp_t *sock, void *data, size_t max_len,
354361
else {
355362
err_t err;
356363
if ((err = netconn_recv_tcp_pbuf(sock->base.conn, &buf)) < 0) {
364+
DEBUG("sock_tcp_read(): %d", (int)err);
357365
switch (err) {
358366
case ERR_ABRT:
359367
res = -ECONNABORTED;
@@ -421,6 +429,17 @@ ssize_t sock_tcp_read(sock_tcp_t *sock, void *data, size_t max_len,
421429
#endif
422430
netconn_set_nonblocking(sock->base.conn, false);
423431
mutex_unlock(&sock->mutex);
432+
433+
DEBUG("sock_tcp_read(): %d\n", (int)res);
434+
if (ENABLE_DEBUG && (res > 0)) {
435+
DEBUG(" ");
436+
unsigned bytes_to_print = (res > 8) ? 8 : res;
437+
for (unsigned i = 0; i < bytes_to_print; i++) {
438+
DEBUG(" %02X", (unsigned)((uint8_t *)data)[i]);
439+
}
440+
DEBUG_PUTS((res > 8) ? "..." : "");
441+
}
442+
424443
return res;
425444
}
426445

@@ -429,6 +448,16 @@ ssize_t sock_tcp_write(sock_tcp_t *sock, const void *data, size_t len)
429448
struct netconn *conn;
430449
int res = 0;
431450

451+
DEBUG("sock_tcp_write(sock, data, %u)\n", (unsigned)len);
452+
if (ENABLE_DEBUG) {
453+
DEBUG(" ");
454+
unsigned bytes_to_print = (len > 8) ? 8 : len;
455+
for (unsigned i = 0; i < bytes_to_print; i++) {
456+
DEBUG(" %02X", (unsigned)((uint8_t *)data)[i]);
457+
}
458+
DEBUG_PUTS((len > 8) ? "..." : "");
459+
}
460+
432461
assert(sock != NULL);
433462
assert((len == 0) || (data != NULL)); /* (len != 0) => (data != NULL) */
434463
mutex_lock(&sock->mutex);
@@ -444,6 +473,8 @@ ssize_t sock_tcp_write(sock_tcp_t *sock, const void *data, size_t len)
444473
NULL) so we can leave the mutex */
445474
res = lwip_sock_send(conn, data, len, 0, NULL, NETCONN_TCP);
446475

476+
DEBUG("sock_tcp_write(): %d\n", (int)res);
477+
447478
return res;
448479
}
449480

0 commit comments

Comments
 (0)