X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=lib%2Finit.c;h=d41c4f8186acdc02261a473ae53c9b8c0288918d;hb=be243cfa9bedd8ac1b350a3af7c48d01800d8679;hp=d65520354f80ea2457c6bf633a85b4bfe9ee18db;hpb=a87bb233a859992cdbe1ef4e92161b45ed8e5c92;p=deb_libnfs.git diff --git a/lib/init.c b/lib/init.c index d655203..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) { @@ -222,7 +231,7 @@ int rpc_add_fragment(struct rpc_context *rpc, char *data, uint64_t size) } memcpy(fragment->data, data, fragment->size); - SLIST_ADD_END(&rpc->fragments, fragment); + LIBNFS_LIST_ADD_END(&rpc->fragments, fragment); return 0; } @@ -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); } }