diff options
author | Luke Leighton <lkcl@samba.org> | 1997-10-23 16:17:07 +0000 |
---|---|---|
committer | Luke Leighton <lkcl@samba.org> | 1997-10-23 16:17:07 +0000 |
commit | 203c93e9221bfa71a00165f251695cafb92f035b (patch) | |
tree | 82171a9a1eb44c26a09c86c3a45793247382fed2 /source3/pipesrvsvc.c | |
parent | 10e186bab7f490ebb2c07a7b71cd28c06855ff17 (diff) | |
download | samba-203c93e9221bfa71a00165f251695cafb92f035b.tar.gz samba-203c93e9221bfa71a00165f251695cafb92f035b.tar.bz2 samba-203c93e9221bfa71a00165f251695cafb92f035b.zip |
general sorting out, from crashes generated by do_lsa_req_chal() in client.c
trying to set up the data parameters etc and not understanding what's going on.
in api_netlogTNP, added smb_io_rpc_hdr() call to decode the header received
(and in this instance, generated by do_lsa_req_chal()). and then noticed
that it's two bytes out. but i don't know how to do "byte parameters"
and it's not the same format as the LSA_REQCHAL received from nt workstations.
agh!
(This used to be commit 0cc8ce43e1d54b44237bb525f4cf6b77e7ca3ced)
Diffstat (limited to 'source3/pipesrvsvc.c')
-rw-r--r-- | source3/pipesrvsvc.c | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/source3/pipesrvsvc.c b/source3/pipesrvsvc.c index 2c94bb2ebf..8f80cb1bd6 100644 --- a/source3/pipesrvsvc.c +++ b/source3/pipesrvsvc.c @@ -188,13 +188,24 @@ BOOL api_srvsvcTNP(int cnum,int uid, char *param,char *data, char **rdata,char **rparam, int *rdata_len,int *rparam_len) { - int pkttype = CVAL(data, 2); - uint32 call_id = SVAL(data,12); - uint16 opnum = SVAL(data,22); - extern pstring myname; char *q; + int pkttype; + uint32 call_id; + uint16 opnum; + + if (data == NULL) + { + DEBUG(2,("api_srvsvcTNP: NULL data parameter\n")); + return False; + } + + /* really should decode these with a RPC_HDR structure */ + pkttype = CVAL(data, 2); + call_id = SVAL(data,12); + opnum = SVAL(data,22); + if (pkttype == RPC_BIND) /* RPC BIND */ { DEBUG(4,("srvsvc rpc bind %x\n",pkttype)); |