diff options
author | Gerald Carter <jerry@samba.org> | 2000-07-10 19:57:30 +0000 |
---|---|---|
committer | Gerald Carter <jerry@samba.org> | 2000-07-10 19:57:30 +0000 |
commit | 588aadb29fbb7cc0e81ac19f95e97101a64dbd8e (patch) | |
tree | 88286b8207ab1d1d1a16873c5daf33bb86dd7b42 | |
parent | ebcb7473c6b62266c30e276d02186d8e50a5629a (diff) | |
download | samba-588aadb29fbb7cc0e81ac19f95e97101a64dbd8e.tar.gz samba-588aadb29fbb7cc0e81ac19f95e97101a64dbd8e.tar.xz samba-588aadb29fbb7cc0e81ac19f95e97101a64dbd8e.zip |
spoolenum commend (when compiled with the new prs_unistr())
now works. :-)
jerry
-rw-r--r-- | source/rpc_client/msrpc_spoolss.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/source/rpc_client/msrpc_spoolss.c b/source/rpc_client/msrpc_spoolss.c index 9ff88ed23c8..ea3d4828370 100644 --- a/source/rpc_client/msrpc_spoolss.c +++ b/source/rpc_client/msrpc_spoolss.c @@ -35,18 +35,20 @@ extern FILE* out_hnd; extern struct user_creds *usr_creds; +/******************************************************************** +initialize a spoolss NEW_BUFFER. + + ** WARNING ** Calling this function on an existing buffer + (which already hgolds data in the buffer->prs.data_p) + will result in memory leakage +********************************************************************/ static void init_buffer(NEW_BUFFER *buffer, uint32 size) { - int new_size = 0; - buffer->ptr = (size!=0)? 1:0; buffer->size=size; buffer->string_at_end=size; - prs_init(&(buffer->prs), MAX_PDU_FRAG_LEN, 4, MARSHALL); - new_size = MAX(size,buffer->prs.buffer_size) - MIN(size,buffer->prs.buffer_size); - prs_grow(&(buffer->prs), new_size); - buffer->prs.io=MARSHALL; - buffer->prs.data_offset=0; + prs_init(&(buffer->prs), size, 4, MARSHALL); + buffer->struct_start = prs_offset(&buffer->prs); } static void decode_printer_info_0(NEW_BUFFER *buffer, uint32 returned, PRINTER_INFO_0 **info) |