Author: metze
Date: 2006-06-22 17:06:36 +0000 (Thu, 22 Jun 2006)
New Revision: 16464

WebSVN: 
http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=16464

Log:
split client and server min/max protocol settings

metze
Modified:
   branches/SAMBA_4_0/source/libcli/cliconnect.c
   branches/SAMBA_4_0/source/libcli/smb_composite/connect.c
   branches/SAMBA_4_0/source/param/loadparm.c
   branches/SAMBA_4_0/source/smb_server/smb/negprot.c
   branches/SAMBA_4_0/source/smb_server/smb_server.c


Changeset:
Modified: branches/SAMBA_4_0/source/libcli/cliconnect.c
===================================================================
--- branches/SAMBA_4_0/source/libcli/cliconnect.c       2006-06-22 17:00:11 UTC 
(rev 16463)
+++ branches/SAMBA_4_0/source/libcli/cliconnect.c       2006-06-22 17:06:36 UTC 
(rev 16464)
@@ -57,7 +57,7 @@
 /* wrapper around smb_raw_negotiate() */
 NTSTATUS smbcli_negprot(struct smbcli_state *cli)
 {
-       return smb_raw_negotiate(cli->transport, lp_maxprotocol());
+       return smb_raw_negotiate(cli->transport, lp_cli_maxprotocol());
 }
 
 /* wrapper around smb_raw_sesssetup() */

Modified: branches/SAMBA_4_0/source/libcli/smb_composite/connect.c
===================================================================
--- branches/SAMBA_4_0/source/libcli/smb_composite/connect.c    2006-06-22 
17:00:11 UTC (rev 16463)
+++ branches/SAMBA_4_0/source/libcli/smb_composite/connect.c    2006-06-22 
17:06:36 UTC (rev 16464)
@@ -63,7 +63,7 @@
 {
        struct connect_state *state = talloc_get_type(c->private_data, struct 
connect_state);
 
-       state->req = smb_raw_negotiate_send(state->transport, lp_maxprotocol());
+       state->req = smb_raw_negotiate_send(state->transport, 
lp_cli_maxprotocol());
        NT_STATUS_HAVE_NO_MEMORY(state->req);
 
        state->req->async.fn = request_handler;

Modified: branches/SAMBA_4_0/source/param/loadparm.c
===================================================================
--- branches/SAMBA_4_0/source/param/loadparm.c  2006-06-22 17:00:11 UTC (rev 
16463)
+++ branches/SAMBA_4_0/source/param/loadparm.c  2006-06-22 17:06:36 UTC (rev 
16464)
@@ -139,8 +139,10 @@
        int max_mux;
        int max_xmit;
        int pwordlevel;
-       int maxprotocol;
-       int minprotocol;
+       int srv_maxprotocol;
+       int srv_minprotocol;
+       int cli_maxprotocol;
+       int cli_minprotocol;
        int security;
        char **AuthMethods;
        int paranoid_server_security;
@@ -448,8 +450,10 @@
        {"tls crlfile", P_STRING, P_GLOBAL, &Globals.tls_crlfile, NULL, NULL, 
FLAG_ADVANCED | FLAG_DEVELOPER},
        {"swat directory", P_STRING, P_GLOBAL, &Globals.swat_directory, NULL, 
NULL, FLAG_ADVANCED | FLAG_DEVELOPER},
        {"large readwrite", P_BOOL, P_GLOBAL, &Globals.bLargeReadwrite, NULL, 
NULL, FLAG_DEVELOPER},
-       {"max protocol", P_ENUM, P_GLOBAL, &Globals.maxprotocol, NULL, 
enum_protocol, FLAG_DEVELOPER},
-       {"min protocol", P_ENUM, P_GLOBAL, &Globals.minprotocol, NULL, 
enum_protocol, FLAG_DEVELOPER},
+       {"server max protocol", P_ENUM, P_GLOBAL, &Globals.srv_maxprotocol, 
NULL, enum_protocol, FLAG_DEVELOPER},
+       {"server min protocol", P_ENUM, P_GLOBAL, &Globals.srv_minprotocol, 
NULL, enum_protocol, FLAG_DEVELOPER},
+       {"client max protocol", P_ENUM, P_GLOBAL, &Globals.cli_maxprotocol, 
NULL, enum_protocol, FLAG_DEVELOPER},
+       {"client min protocol", P_ENUM, P_GLOBAL, &Globals.cli_minprotocol, 
NULL, enum_protocol, FLAG_DEVELOPER},
        {"unicode", P_BOOL, P_GLOBAL, &Globals.bUnicode, NULL, NULL, 
FLAG_DEVELOPER},
        {"read raw", P_BOOL, P_GLOBAL, &Globals.bReadRaw, NULL, NULL, 
FLAG_DEVELOPER},
        {"write raw", P_BOOL, P_GLOBAL, &Globals.bWriteRaw, NULL, NULL, 
FLAG_DEVELOPER},
@@ -647,8 +651,10 @@
        do_parameter("max xmit", "12288", NULL);
        do_parameter("password level", "0", NULL);
        do_parameter("LargeReadwrite", "True", NULL);
-       do_parameter("min protocol", "CORE", NULL);
-       do_parameter("max protocol", "NT1", NULL);
+       do_parameter("server min protocol", "CORE", NULL);
+       do_parameter("server max protocol", "NT1", NULL);
+       do_parameter("client min protocol", "CORE", NULL);
+       do_parameter("client max protocol", "NT1", NULL);
        do_parameter("security", "USER", NULL);
        do_parameter("paranoid server security", "True", NULL);
        do_parameter("EncryptPasswords", "True", NULL);
@@ -882,8 +888,10 @@
 _PUBLIC_ FN_GLOBAL_INTEGER(lp_maxmux, &Globals.max_mux)
 _PUBLIC_ FN_GLOBAL_INTEGER(lp_max_xmit, &Globals.max_xmit)
 _PUBLIC_ FN_GLOBAL_INTEGER(lp_passwordlevel, &Globals.pwordlevel)
-_PUBLIC_ FN_GLOBAL_INTEGER(lp_maxprotocol, &Globals.maxprotocol)
-_PUBLIC_ FN_GLOBAL_INTEGER(lp_minprotocol, &Globals.minprotocol)
+_PUBLIC_ FN_GLOBAL_INTEGER(lp_srv_maxprotocol, &Globals.srv_maxprotocol)
+_PUBLIC_ FN_GLOBAL_INTEGER(lp_srv_minprotocol, &Globals.srv_minprotocol)
+_PUBLIC_ FN_GLOBAL_INTEGER(lp_cli_maxprotocol, &Globals.cli_maxprotocol)
+_PUBLIC_ FN_GLOBAL_INTEGER(lp_cli_minprotocol, &Globals.cli_minprotocol)
 _PUBLIC_ FN_GLOBAL_INTEGER(lp_security, &Globals.security)
 _PUBLIC_ FN_GLOBAL_LIST(lp_auth_methods, &Globals.AuthMethods)
 _PUBLIC_ FN_GLOBAL_BOOL(lp_paranoid_server_security, 
&Globals.paranoid_server_security)

Modified: branches/SAMBA_4_0/source/smb_server/smb/negprot.c
===================================================================
--- branches/SAMBA_4_0/source/smb_server/smb/negprot.c  2006-06-22 17:00:11 UTC 
(rev 16463)
+++ branches/SAMBA_4_0/source/smb_server/smb/negprot.c  2006-06-22 17:06:36 UTC 
(rev 16464)
@@ -509,8 +509,8 @@
        for (protocol = 0; supported_protocols[protocol].proto_name; 
protocol++) {
                int i;
 
-               if (supported_protocols[protocol].protocol_level > 
lp_maxprotocol()) continue;
-               if (supported_protocols[protocol].protocol_level < 
lp_minprotocol()) continue;
+               if (supported_protocols[protocol].protocol_level > 
lp_srv_maxprotocol()) continue;
+               if (supported_protocols[protocol].protocol_level < 
lp_srv_minprotocol()) continue;
 
                for (i = 0; i < protos_count; i++) {
                        if (strcmp(supported_protocols[protocol].proto_name, 
protos[i]) != 0) continue;

Modified: branches/SAMBA_4_0/source/smb_server/smb_server.c
===================================================================
--- branches/SAMBA_4_0/source/smb_server/smb_server.c   2006-06-22 17:00:11 UTC 
(rev 16463)
+++ branches/SAMBA_4_0/source/smb_server/smb_server.c   2006-06-22 17:06:36 UTC 
(rev 16464)
@@ -61,7 +61,7 @@
                packet_set_callback(smb_conn->packet, smbsrv_recv_smb_request);
                return smbsrv_recv_smb_request(smb_conn, blob);
        case SMB2_MAGIC:
-               if (lp_maxprotocol() < PROTOCOL_SMB2) break;
+               if (lp_srv_maxprotocol() < PROTOCOL_SMB2) break;
                status = smbsrv_init_smb2_connection(smb_conn);
                NT_STATUS_NOT_OK_RETURN(status);
                packet_set_callback(smb_conn->packet, smbsrv_recv_smb2_request);

Reply via email to