From 509c71fef5bc3c8a3ec1b99fc1b4268c4b945a4f Mon Sep 17 00:00:00 2001 From: Gerald Carter Date: Wed, 19 May 2004 17:17:33 +0000 Subject: r783: fix bug in reading printer data from disk; all ow valuenames with embedded '\'s (This used to be commit fdc1633c348b072a6dde45a3d9b3b8a19744613d) --- source3/printing/nt_printing.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'source3') diff --git a/source3/printing/nt_printing.c b/source3/printing/nt_printing.c index ccee2565e1..909aed6c86 100644 --- a/source3/printing/nt_printing.c +++ b/source3/printing/nt_printing.c @@ -2053,10 +2053,13 @@ static WERROR update_a_printer_2(NT_PRINTER_INFO_LEVEL_2 *info) * and printer is \\server\\printer * * Samba manages only local printers. - * we currently don't support things like path=\\other_server\printer + * we currently don't support things like i + * path=\\other_server\printer + * + * We only store the printername, not \\server\printername */ - if (info->servername[0]!='\0') { + if ( info->servername[0] != '\0' ) { trim_string(info->printername, info->servername, NULL); trim_char(info->printername, '\\', '\0'); info->servername[0]='\0'; @@ -3067,10 +3070,13 @@ static int unpack_values(NT_PRINTER_DATA *printer_data, char *buf, int buflen) /* * break of the keyname from the value name. - * Should only be one '\' in the string returned. + * Valuenames can have embedded '\'s so be careful. + * only support one level of keys. See the + * "Konica Fiery S300 50C-K v1.1. enu" 2k driver. + * -- jerry */ - str = strrchr( string, '\\'); + str = strchr_m( string, '\\'); /* Put in "PrinterDriverData" is no key specified */ -- cgit