param: disable print notify backchannel by default
authorDavid Disseldorp <ddiss@samba.org>
Mon, 14 Oct 2013 11:53:22 +0000 (13:53 +0200)
committerGünther Deschner <gd@samba.org>
Mon, 14 Oct 2013 16:49:41 +0000 (18:49 +0200)
In handling RemoteFindFirstPrinterChangeNotifyEx requests, the spoolss
server can establish a "backchannel" connection to the print client, as
a mechanism for sending print notifications. This behaviour is governed
by the "print notify backchannel" smb.conf parameter.

This change sets "print notify backchannel" to "no" by default, which
sees Samba respond to RemoteFindFirstPrinterChangeNotifyEx requests with
WERR_SERVER_UNAVAILABLE. In recieving such a response, print clients can
fall back to polling for print queue changes.

Signed-off-by: David Disseldorp <ddiss@samba.org>
Reviewed-by: Günther Deschner <gd@samba.org>
Autobuild-User(master): Günther Deschner <gd@samba.org>
Autobuild-Date(master): Mon Oct 14 18:49:41 CEST 2013 on sn-devel-104

docs-xml/smbdotconf/printing/printnotifybackchannel.xml
selftest/target/Samba3.pm
selftest/target/Samba4.pm
source3/param/loadparm.c

index 4046322dd72517968910d8e3f1b5e2daa95276e2..ce6a595fc966143f05cebcb068e91d28f42f3885 100644 (file)
@@ -8,12 +8,10 @@
        the server to open a backchannel SMB connection to them. Due to
        client firewall settings this can cause considerable timeouts
        and will often fail, as there is no guarantee the client is even
-       running an SMB server. By setting this parameter to <constant>no</constant>
-       the Samba print server will not try to connect back to clients
-       and treat corresponding requests as if the connection back to
-       the client failed. The default setting of <constant>yes</constant>
-       causes smbd to attempt this connection.
+       running an SMB server. By default, the Samba print server will
+       not try to connect back to clients, and will treat corresponding
+       requests as if the connection back to the client failed.
 </para>
 </description>
-<value type="default">yes</value>
+<value type="default">no</value>
 </samba:parameter>
index 0972457d924b323436fd7b4d0dd5ac53f5e4cd06..fbbddcc926c1dec919f9f8125239b2c99ded2e19 100755 (executable)
@@ -998,6 +998,7 @@ sub provision($$$$$$)
        queue pause command = $bindir_abs/vlp tdbfile=$lockdir/vlp.tdb queuepause %p
        queue resume command = $bindir_abs/vlp tdbfile=$lockdir/vlp.tdb queueresume %p
        lpq cache time = 0
+       print notify backchannel = yes
 
        ncalrpc dir = $prefix_abs/ncalrpc
         resolv:host file = $dns_host_file
index d7aa9c5bc106b90bb00b740a4f9272ff80a06bcc..646ac73061076bd815e3ecbb675f24be3e857207 100644 (file)
@@ -1451,6 +1451,7 @@ sub provision_plugin_s4_dc($$)
        queue pause command = $bindir_abs/vlp tdbfile=$lockdir/vlp.tdb queuepause %p
        queue resume command = $bindir_abs/vlp tdbfile=$lockdir/vlp.tdb queueresume %p
        lpq cache time = 0
+       print notify backchannel = yes
 
 ";
 
index e702420124666662b0a4e8d7e4be3e6cf1848fc3..3daebdb61cd6fa31f92e60d9716f4cdf8d4ee521 100644 (file)
@@ -218,7 +218,7 @@ static struct loadparm_service sDefault =
        .bAdministrative_share = false,
        .bGuest_ok = false,
        .bPrint_ok = false,
-       .bPrintNotifyBackchannel = true,
+       .bPrintNotifyBackchannel = false,
        .bMap_system = false,
        .bMap_hidden = false,
        .bMap_archive = true,