Bug 2763 - [PATCH] spurious "error checking published printers" error on smbd sart-up
[PATCH] spurious "error checking published printers" error on smbd sart-up
Product: Samba 3.0
Classification: Unclassified
Component: Printing
All Windows XP
: P3 normal
: none
Assigned To: Gerald (Jerry) Carter
Samba QA Contact
Depends on:
  Show dependency treegraph
Reported: 2005-06-01 16:27 UTC by Jonathan Kamens
Modified: 2015-10-23 01:20 UTC (History)
0 users

See Also:

patch to disable unnecessary error message when no DC (509 bytes, patch)
2005-06-01 16:27 UTC, Jonathan Kamens
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jonathan Kamens 2005-06-01 16:27:27 UTC
When smbd is used in an environment with no domain controller, it generates 
this syslog message upon startup:

  nt_printing_init: error checking published printers: WERR_ACCESS_DENIED

This isn't actually an error condition, so no error should be logged.  I will 
attach a patch.
Comment 1 Jonathan Kamens 2005-06-01 16:27:49 UTC
Created attachment 1254 [details]
patch to disable unnecessary error message when no DC
Comment 2 Gerald (Jerry) Carter 2005-07-15 10:52:51 UTC
I don't understand.  The call is bracketd in 

if ( lp_security() == SEC_ADS ) {
    win_rc = check_published_printers();
    if (!W_ERROR_IS_OK(win_rc))
        DEBUG(0, ("nt_printing_init: error checking published printers: %s\n",

so if there are no domain controllers, what is the point of running 
'security = ads'?
Comment 3 Jonathan Kamens 2005-07-15 11:05:59 UTC
I don't understand your question.  Can you ask it again with a bit more detail?
Comment 4 Gerald (Jerry) Carter 2005-08-12 12:41:45 UTC
I guess my original question was related to the fact there are 
no domain controllers.  I assume that this is really a problem 
in the environment.  Because running 'security = ads' with no DC's 
available ever would just not make sense.

The call to check_published_printers() is only made when 
'security = ads'.   Sorry for being dense here, but is seems to 
me that this is a real issue that should be logged.  smbd cannot check 
on the published printer attributes because there is no DC available
foir its domain (which is an error).
Comment 5 Jonathan Kamens 2005-08-14 13:21:13 UTC
I have "security = user" in my smb.conf file and have had that setting for the
last four years, so I don't think your assertion that this call only happens
when "security = ads" is true, unless that code has changed since I filed this
bug report.
Comment 6 Gerald (Jerry) Carter 2005-08-15 05:46:12 UTC
The change was made in r2955:

r2955 | jerry | 2004-10-13 14:40:22 -0500 (Wed, 13 Oct 2004) | 1 line

fixing a segfault uncovered by the changes for BUG 1519

The code has been this way since 3.0.8.  There is one one 
call to check_published_printers() in the code.  and that call 
is wrapped in 'if ( lp_security() == SEC_ADS ) ... '

If you upload a log file for 'smbd -d 10 -i' and your 
smb,conf, I'll pursue this some more.  But based on the 
current code (and even in 3.0.14a), your patch appears 

Comment 7 Jonathan Kamens 2005-08-15 06:27:13 UTC
Well, I'll be darned.  I can't duplicate the problem now, and from your
description, it definitely seems like I should never have seen it in the first
place.  I can't explain what happened, but I'm certainly sorry to trouble you
about this!  If I do manage to figure out how to get it to happen the first
time, I'll reopen the ticket.
Comment 8 Jason Heiss 2015-10-23 01:20:45 UTC
For what it's worth I'm running with "security = ads" on a standalone Samba server so that it can do Kerberos authentication.  I followed the directions on https://help.ubuntu.com/community/Samba/Kerberos

So I'm seeing this error message.