X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=lib%2Fsocket.c;h=d93acd80b717c9f4be0fab8168862bab3bdf6dbc;hb=83aa785d927875e69ca4afd58fb53ffc84f24413;hp=760da2f352a2983480485eb903966ef6ded46a3a;hpb=37d14753cedbfa47149bd3dacce089adcec23613;p=deb_libnfs.git diff --git a/lib/socket.c b/lib/socket.c index 760da2f..d93acd8 100644 --- a/lib/socket.c +++ b/lib/socket.c @@ -315,7 +315,7 @@ int rpc_service(struct rpc_context *rpc, int revents) if (revents & POLLIN) { if (rpc_read_from_socket(rpc) != 0) { - rpc_disconnect_requeue(rpc); + rpc_disconnect_requeue(rpc); return 0; } } @@ -514,3 +514,17 @@ struct sockaddr *rpc_get_recv_sockaddr(struct rpc_context *rpc) { return (struct sockaddr *)&rpc->udp_src; } + +int rpc_queue_length(struct rpc_context *rpc) +{ + int i=0; + struct rpc_pdu *pdu; + + for(pdu = rpc->outqueue; pdu; pdu = pdu->next) { + i++; + } + for(pdu = rpc->waitpdu; pdu; pdu = pdu->next) { + i++; + } + return i; +}