diff options
author | Jeremy Allison <jra@samba.org> | 2000-09-29 20:59:18 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2000-09-29 20:59:18 +0000 |
commit | 2b3c2f2e5dcdf64f92a1296881f4dc97d29c88a1 (patch) | |
tree | d27704193d91c56ce400f80cc0fbee0848081da2 | |
parent | b8b683de77810c315f1984a68d128908347dc409 (diff) | |
download | samba-2b3c2f2e5dcdf64f92a1296881f4dc97d29c88a1.tar.gz samba-2b3c2f2e5dcdf64f92a1296881f4dc97d29c88a1.tar.xz samba-2b3c2f2e5dcdf64f92a1296881f4dc97d29c88a1.zip |
Missing null termination on printer changenotify message caused insure
error.
Jeremy.
-rw-r--r-- | source/rpc_server/srv_spoolss_nt.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/source/rpc_server/srv_spoolss_nt.c b/source/rpc_server/srv_spoolss_nt.c index c281ccaaccc..89963890391 100644 --- a/source/rpc_server/srv_spoolss_nt.c +++ b/source/rpc_server/srv_spoolss_nt.c @@ -584,11 +584,12 @@ static BOOL alloc_buffer_size(NEW_BUFFER *buffer, uint32 buffer_size) ****************************************************************************/ void srv_spoolss_receive_message(int msg_type, pid_t src, void *buf, size_t len) { - char printer[256]; + fstring printer; uint32 status; Printer_entry *find_printer; - memcpy(printer, buf, len); + *printer = '\0'; + fstrcpy(printer,buf); find_printer = (Printer_entry *)ubi_dlFirst(&Printer_list); @@ -630,7 +631,7 @@ static BOOL srv_spoolss_sendnotify(POLICY_HND *handle) fstrcpy(printer, ""); /*srv_spoolss_receive_message(printer);*/ - message_send_all(MSG_PRINTER_NOTIFY, printer, strlen(printer)); + message_send_all(MSG_PRINTER_NOTIFY, printer, strlen(printer) + 1); /* Null terminate... */ return True; } |