Jason,
Thanks for your reply. But I don't find the definition of xdr_void in my code. Please find below the function from which I am getting this error:
static void
vatprog_1(rqstp, transp)
struct svc_req *rqstp;
register SVCXPRT *transp;
{
union {
CustomerInfo_parms customerinfo_1_arg;
ReportRequest_parms reportrequest_1_arg;
MailRequest_parms mailrequest_1_arg;
AddDeleteFeature_parms adddeletefeature_1_arg;
BalRequest_parms clm_account_bal_1_arg;
BillInfo_parms billinfo_1_arg;
OneTimePayment_parms onetimepayment_1_arg;
FeatureInfo_parms featureinfo_1_arg;
ESNChange_parms esnchange_1_arg;
GroupCallingInfo_parms groupcallinginfo_1_arg;
GroupCallingUpdate_parms groupcallingupdate_1_arg;
AcctBal_parms acctbal_1_arg;
RecurringCCPayment_parms recurringccpayment_1_arg;
NumberOfCCPayments_parms numberofccpayments_1_arg;
} argument;
char *result;
bool_t (*xdr_argument)(), (*xdr_result)();
char *(*local)();
_rpcsvccount++;
switch (rqstp->rq_proc) {
case NULLPROC:
(void) svc_sendreply(transp, xdr_void,
(char *)NULL);
_rpcsvccount--;
_rpcsvcstate = _SERVED;
return;
case CUSTOMERINFO:
xdr_argument = xdr_CustomerInfo_parms;
xdr_result = xdr_CustomerInfo_results;
local = (char *(*)()) customerinfo_1;
break;
case REPORTREQUEST:
xdr_argument = xdr_ReportRequest_parms;
xdr_result = xdr_ReportRequest_results;
local = (char *(*)()) reportrequest_1;
break;
case MAILREQUEST:
xdr_argument = xdr_MailRequest_parms;
xdr_result = xdr_MailRequest_results;
local = (char *(*)()) mailrequest_1;
break;
case ADDDELETEFEATURE:
xdr_argument = xdr_AddDeleteFeature_parms;
xdr_result = xdr_AddDeleteFeature_results;
local = (char *(*)()) adddeletefeature_1;
break;
case CLM_ACCOUNT_BAL:
xdr_argument = xdr_BalRequest_parms;
xdr_result = xdr_BalRequest_results;
local = (char *(*)()) clm_account_bal_1;
break;
case BILLINFO:
xdr_argument = xdr_BillInfo_parms;
xdr_result = xdr_BillInfo_results;
local = (char *(*)()) billinfo_1;
break;
case ONETIMEPAYMENT:
xdr_argument = xdr_OneTimePayment_parms;
xdr_result = xdr_OneTimePayment_results;
local = (char *(*)()) onetimepayment_1;
break;
case FEATUREINFO:
xdr_argument = xdr_FeatureInfo_parms;
xdr_result = xdr_FeatureInfo_results;
local = (char *(*)()) featureinfo_1;
break;
case ESNCHANGE:
xdr_argument = xdr_ESNChange_parms;
xdr_result = xdr_ESNChange_results;
local = (char *(*)()) esnchange_1;
break;
case GROUPCALLINGINFO:
xdr_argument = xdr_GroupCallingInfo_parms;
xdr_result = xdr_GroupCallingInfo_results;
local = (char *(*)()) groupcallinginfo_1;
break;
case GROUPCALLINGUPDATE:
xdr_argument = xdr_GroupCallingUpdate_parms;
xdr_result = xdr_GroupCallingUpdate_results;
local = (char *(*)()) groupcallingupdate_1;
break;
case ACCTBAL:
xdr_argument = xdr_AcctBal_parms;
xdr_result = xdr_AcctBal_results;
local = (char *(*)()) acctbal_1;
break;
case RECURRINGCCPAYMENT:
xdr_argument = xdr_RecurringCCPayment_parms;
xdr_result = xdr_RecurringCCPayment_results;
local = (char *(*)()) recurringccpayment_1;
break;
case NUMBEROFCCPAYMENTS:
xdr_argument = xdr_NumberOfCCPayments_parms;
xdr_result = xdr_NumberOfCCPayments_results;
local = (char *(*)()) numberofccpayments_1;
break;
default:
svcerr_noproc(transp);
_rpcsvccount--;
_rpcsvcstate = _SERVED;
return;
}
(void) memset((char *)&argument, 0, sizeof (argument));
if (!svc_getargs(transp, (char *)xdr_argument, (char *)&argument)) {
svcerr_decode(transp);
_rpcsvccount--;
_rpcsvcstate = _SERVED;
return;
}
result = (*local)(&argument, rqstp);
if (result != NULL && !svc_sendreply(transp, xdr_result, result)) {
svcerr_systemerr(transp);
}
if (!svc_freeargs(transp,xdr_argument, (char *)&argument)) {
_msgout("unable to free arguments"

;
exit(1);
}
_rpcsvccount--;
_rpcsvcstate = _SERVED;
return;
}
I am also getting the same warning for the functions svc_getargs and svc_freeargs.
Can you or anyone else please help me out on this. I am new in programming and don't have much idea about solving such kind of problems.
-Anand