From: Luca Olivetti Date: Tue, 4 May 2010 22:07:57 +0000 (-0700) Subject: Fix bug #7263 - Unable to print using Samba 3.5.1 and cups-1.1.23-40.46 on SLES10. X-Git-Tag: samba-3.6.0pre1~2253 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a9e008ee36c8fd9ca79b3bdfdc78111939c3e539;p=thirdparty%2Fsamba.git Fix bug #7263 - Unable to print using Samba 3.5.1 and cups-1.1.23-40.46 on SLES10. Fix cups encryption setting I had the same problem and it's due to the fact that samba doesn't respect the "cups encryption" setting since lp_cups_encrypt changes the value: if you set "cups encryption=no", the first call will change it to HTTP_ENCRYPT_NEVER, since that is 1 (i.e. true), the next call will change it to HTTP_ENCRYPT_ALWAYS and after that it'll remain set as HTTP_ENCRYPT_ALWAYS. This patch fixes this problem. Don't mix up the HTTP_ENCRYPT_XXX constants up with the enumeration constants (True, False, Auto) used in the loadparm code. --- diff --git a/source3/param/loadparm.c b/source3/param/loadparm.c index 350f3c077ca..113b8677a14 100644 --- a/source3/param/loadparm.c +++ b/source3/param/loadparm.c @@ -5678,20 +5678,21 @@ FN_LOCAL_STRING(lp_cups_options, szCupsOptions) FN_GLOBAL_STRING(lp_cups_server, &Globals.szCupsServer) int lp_cups_encrypt(void) { + int result = 0; #ifdef HAVE_HTTPCONNECTENCRYPT switch (Globals.CupsEncrypt) { case Auto: - Globals.CupsEncrypt = HTTP_ENCRYPT_REQUIRED; + result = HTTP_ENCRYPT_REQUIRED; break; case True: - Globals.CupsEncrypt = HTTP_ENCRYPT_ALWAYS; + result = HTTP_ENCRYPT_ALWAYS; break; case False: - Globals.CupsEncrypt = HTTP_ENCRYPT_NEVER; + result = HTTP_ENCRYPT_NEVER; break; } #endif - return Globals.CupsEncrypt; + return result; } FN_GLOBAL_STRING(lp_iprint_server, &Globals.szIPrintServer) FN_GLOBAL_INTEGER(lp_cups_connection_timeout, &Globals.cups_connection_timeout)