X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;ds=inline;f=lib%2Fpdu.c;h=c2538efa8e127cf7240545c1a4e42560a112d6ff;hb=6b1f14ca0177a25a72eaf1f62ed1ad00f6ae4f5f;hp=6efd3554b23517c0cf13c2ba0163f7dbc802f243;hpb=e77d093c377537f52f46830790a8c66a6cda5bed;p=deb_libnfs.git
diff --git a/lib/pdu.c b/lib/pdu.c
index 6efd355..c2538ef 100644
--- a/lib/pdu.c
+++ b/lib/pdu.c
@@ -14,20 +14,33 @@
You should have received a copy of the GNU Lesser General Public License
along with this program; if not, see .
*/
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#ifdef AROS
+#include "aros_compat.h"
+#endif
+
#ifdef WIN32
#include "win32_compat.h"
-#ifndef MSG_DONTWAIT
-#define MSG_DONTWAIT 0
#endif
-#else
+
+#ifdef HAVE_NETINET_IN_H
+#include
+#endif
+
+#ifdef HAVE_SYS_SOCKET_H
+#include
+#endif
+
+#ifdef HAVE_STRINGS_H
#include
-#endif/*WIN32*/
+#endif
#include
#include
#include
-#include
-#include
#include
#include
#include "slist.h"
@@ -36,10 +49,6 @@
#include "libnfs-raw.h"
#include "libnfs-private.h"
-#ifdef AROS
-#include "aros_compat.h"
-#endif
-
struct rpc_pdu *rpc_allocate_pdu(struct rpc_context *rpc, int program, int version, int procedure, rpc_cb cb, void *private_data, zdrproc_t zdr_decode_fn, int zdr_decode_bufsize)
{
struct rpc_pdu *pdu;
@@ -104,6 +113,10 @@ void rpc_free_pdu(struct rpc_context *rpc, struct rpc_pdu *pdu)
free(pdu);
}
+void rpc_set_next_xid(struct rpc_context *rpc, uint32_t xid)
+{
+ rpc->xid = xid;
+}
int rpc_queue_pdu(struct rpc_context *rpc, struct rpc_pdu *pdu)
{
@@ -221,7 +234,7 @@ int rpc_process_pdu(struct rpc_context *rpc, char *buf, int size)
struct rpc_pdu *pdu;
ZDR zdr;
int pos, recordmarker = 0;
- unsigned int xid;
+ uint32_t xid;
char *reasbuf = NULL;
assert(rpc->magic == RPC_CONTEXT_MAGIC);