fixes for vnfs

This commit is contained in:
rsc 2005-05-19 14:39:10 +00:00
parent f92a2ceba4
commit 4c06b8eec1
7 changed files with 64 additions and 17 deletions

View file

@ -68,12 +68,17 @@ sunrpcpack(uchar *a, uchar *ea, uchar **pa, SunRpc *rpc)
|| sunauthinfopack(a, ea, &a, &rpc->verf) < 0)
goto Err;
break;
case SunAuthError:
if(sunuint32pack(a, ea, &a, (x=MsgDenied, &x)) < 0
|| sunuint32pack(a, ea, &a, (x=MsgAuthError, &x)) < 0)
goto Err;
break;
default:
if(sunuint32pack(a, ea, &a, (x=MsgDenied, &x)) < 0)
goto Err;
break;
}
switch(rpc->status){
case SunSuccess:
if(sunuint32pack(a, ea, &a, (x=MsgSuccess, &x)) < 0
@ -90,6 +95,7 @@ sunrpcpack(uchar *a, uchar *ea, uchar **pa, SunRpc *rpc)
default:
if(sunuint32pack(a, ea, &a, (x=rpc->status&0xFFFF, &x)) < 0)
goto Err;
break;
}
}
@ -119,6 +125,9 @@ sunrpcsize(SunRpc *rpc)
case SunAcceptError:
a += 4+sunauthinfosize(&rpc->verf);
break;
case SunAuthError:
a += 4+4;
break;
default:
a += 4;
break;
@ -169,6 +178,7 @@ sunrpcunpack(uchar *a, uchar *ea, uchar **pa, SunRpc *rpc)
rpc->iscall = 0;
if(sunuint32unpack(a, ea, &a, &x) < 0)
goto Err;
fprint(2, "x %x\n", x);
switch(x){
default:
goto Err;
@ -200,6 +210,7 @@ sunrpcunpack(uchar *a, uchar *ea, uchar **pa, SunRpc *rpc)
case MsgDenied:
if(sunuint32unpack(a, ea, &a, &x) < 0)
goto Err;
fprint(2, "xx %ux\n", x);
switch(x){
default:
goto Err;