diff options
author | Andrew Tridgell <tridge@samba.org> | 2001-08-27 08:19:43 +0000 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 2001-08-27 08:19:43 +0000 |
commit | e8e98c9ea0690e3acf1126b50882e59e1056c7b3 (patch) | |
tree | 2fa75bc825f7e5da041809fe49080e3319656506 /source3/libsmb/clitrans.c | |
parent | 3820578473da81b7ae0dfa978605da809be59f62 (diff) | |
download | samba-e8e98c9ea0690e3acf1126b50882e59e1056c7b3.tar.gz samba-e8e98c9ea0690e3acf1126b50882e59e1056c7b3.tar.bz2 samba-e8e98c9ea0690e3acf1126b50882e59e1056c7b3.zip |
converted smbd to use NTSTATUS by default
major changes include:
- added NSTATUS type
- added automatic mapping between dos and nt error codes
- changed all ERROR() calls to ERROR_DOS() and many to ERROR_NT()
these calls auto-translate to the client error code system
- got rid of the cached error code and the writebmpx code
We eventually will need to also:
- get rid of BOOL, so we don't lose error info
- replace all ERROR_DOS() calls with ERROR_NT() calls
but that is too much for one night
(This used to be commit 83d9896c1ea8be796192b51a4678c2a3b87f7518)
Diffstat (limited to 'source3/libsmb/clitrans.c')
-rw-r--r-- | source3/libsmb/clitrans.c | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/source3/libsmb/clitrans.c b/source3/libsmb/clitrans.c index 4822508e38..6ae1014435 100644 --- a/source3/libsmb/clitrans.c +++ b/source3/libsmb/clitrans.c @@ -412,20 +412,25 @@ BOOL cli_receive_nt_trans(struct cli_state *cli, total_param = SVAL(cli->inbuf,smb_ntr_TotalParameterCount); /* allocate it */ - tdata = Realloc(*data,total_data); - if (!tdata) { - DEBUG(0,("cli_receive_nt_trans: failed to enlarge buffer")); - return False; + if (total_data) { + tdata = Realloc(*data,total_data); + if (!tdata) { + DEBUG(0,("cli_receive_nt_trans: failed to enlarge data buffer to %d\n",total_data)); + return False; + } else { + *data = tdata; + } } - else - *data = tdata; - tparam = Realloc(*param,total_param); - if (!tparam) { - DEBUG(0,("cli_receive_nt_trans: failed to enlarge buffer")); - return False; + + if (total_param) { + tparam = Realloc(*param,total_param); + if (!tparam) { + DEBUG(0,("cli_receive_nt_trans: failed to enlarge param buffer to %d\n", total_param)); + return False; + } else { + *param = tparam; + } } - else - *param = tparam; while (1) { this_data = SVAL(cli->inbuf,smb_ntr_DataCount); |