X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=lib%2Finit.c;h=d41c4f8186acdc02261a473ae53c9b8c0288918d;hb=be243cfa9bedd8ac1b350a3af7c48d01800d8679;hp=782a7ea3edbac2da46c4c557d2de37a945ca24cb;hpb=8a52596b74e8e5cf371e3f6cbeae0ae87d2d558e;p=deb_libnfs.git diff --git a/lib/init.c b/lib/init.c index 782a7ea..d41c4f8 100644 --- a/lib/init.c +++ b/lib/init.c @@ -1,7 +1,10 @@ /* Copyright (C) 2010 by Ronnie Sahlberg - + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU Lesser General Public License as published by + the Free Software Foundation; either version 2.1 of the License, or + (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -91,6 +94,12 @@ struct rpc_context *rpc_init_context(void) return rpc; } +void rpc_set_readahead(struct rpc_context *rpc, uint32_t v) +{ + assert(rpc->magic == RPC_CONTEXT_MAGIC); + + rpc->readahead = v; +} struct rpc_context *rpc_init_udp_context(void) { @@ -235,7 +244,7 @@ void rpc_destroy_context(struct rpc_context *rpc) while((pdu = rpc->outqueue.head) != NULL) { pdu->cb(rpc, RPC_STATUS_CANCEL, NULL, pdu->private_data); - rpc->outqueue.head = pdu->next; + LIBNFS_LIST_REMOVE(&rpc->outqueue.head, pdu); rpc_free_pdu(rpc, pdu); } @@ -244,7 +253,7 @@ void rpc_destroy_context(struct rpc_context *rpc) while((pdu = q->head) != NULL) { pdu->cb(rpc, RPC_STATUS_CANCEL, NULL, pdu->private_data); - rpc->outqueue.head = pdu->next; + LIBNFS_LIST_REMOVE(&q->head, pdu); rpc_free_pdu(rpc, pdu); } }