#include <string.h>
#include <sys/socket.h>
#include <netinet/in.h>
+#include <assert.h>
#include <errno.h>
#include "slist.h"
#include "libnfs-zdr.h"
struct rpc_pdu *pdu;
struct rpc_msg msg;
- if (rpc == NULL) {
- return NULL;
- }
+ assert(rpc->magic == RPC_CONTEXT_MAGIC);
pdu = malloc(sizeof(struct rpc_pdu));
if (pdu == NULL) {
return pdu;
}
-void rpc_free_pdu(struct rpc_context *rpc _U_, struct rpc_pdu *pdu)
+void rpc_free_pdu(struct rpc_context *rpc, struct rpc_pdu *pdu)
{
+ assert(rpc->magic == RPC_CONTEXT_MAGIC);
+
if (pdu->outdata.data != NULL) {
free(pdu->outdata.data);
pdu->outdata.data = NULL;
{
int size, recordmarker;
+ assert(rpc->magic == RPC_CONTEXT_MAGIC);
+
size = zdr_getpos(&pdu->zdr);
/* for udp we dont queue, we just send it straight away */
{
struct rpc_msg msg;
+ assert(rpc->magic == RPC_CONTEXT_MAGIC);
+
memset(&msg, 0, sizeof(struct rpc_msg));
msg.acpted_rply.ar_verf = _null_auth;
if (pdu->zdr_decode_bufsize > 0) {
unsigned int xid;
char *reasbuf = NULL;
+ assert(rpc->magic == RPC_CONTEXT_MAGIC);
+
memset(&zdr, 0, sizeof(ZDR));
zdrmem_create(&zdr, buf, size, ZDR_DECODE);