s4 libcli: Add back Longhorn beta dialect as a constant
authorZach Loafman <zachary.loafman@isilon.com>
Wed, 18 Mar 2009 17:36:59 +0000 (10:36 -0700)
committerTim Prouty <tprouty@samba.org>
Wed, 18 Mar 2009 18:03:33 +0000 (11:03 -0700)
Also tweak how the dialect array and count is initialized.

source4/libcli/smb2/connect.c
source4/libcli/smb2/smb2.h

index 3fd9a38e019d3ffe95b9ff3b47d65ddf81260f21..b522a56239b2caebe5e0f534dabd015dfcf6e7cc 100644 (file)
@@ -162,7 +162,8 @@ static void continue_socket(struct composite_context *creq)
        struct smbcli_socket *sock;
        struct smb2_transport *transport;
        struct smb2_request *req;
-       uint16_t dialects[2];
+       uint16_t dialects[3] = { SMB2_DIALECT_REVISION, SMB21_DIALECT_REVISION,
+                                SMB2_LONGHORN_BETA_DIALECT_REVISION };
 
        c->status = smbcli_sock_connect_recv(creq, state, &sock);
        if (!composite_is_ok(c)) return;
@@ -171,7 +172,7 @@ static void continue_socket(struct composite_context *creq)
        if (composite_nomem(transport, c)) return;
 
        ZERO_STRUCT(state->negprot);
-       state->negprot.in.dialect_count = 2;
+       state->negprot.in.dialect_count = sizeof(dialects) / sizeof(dialects[0]);
        switch (transport->options.signing) {
        case SMB_SIGNING_OFF:
                state->negprot.in.security_mode = 0;
@@ -187,8 +188,6 @@ static void continue_socket(struct composite_context *creq)
        }
        state->negprot.in.capabilities  = 0;
        unix_to_nt_time(&state->negprot.in.start_time, time(NULL));
-       dialects[0] = SMB2_DIALECT_REVISION;
-       dialects[1] = SMB21_DIALECT_REVISION;
        state->negprot.in.dialects = dialects;
 
        req = smb2_negprot_send(transport, &state->negprot);
index 3cc3ec2f25b99f13c1ea37b15a3ee8b8306679ca..7c07c847403837ccdb7a9a0b6d35b084b09be303 100644 (file)
@@ -230,6 +230,7 @@ struct smb2_request {
 /* the dialects we support */
 #define SMB2_DIALECT_REVISION           0x202
 #define SMB21_DIALECT_REVISION          0x210
+#define SMB2_LONGHORN_BETA_DIALECT_REVISION    0x0 /* early beta dialect */
 
 /* SMB2 negotiate security_mode */
 #define SMB2_NEGOTIATE_SIGNING_ENABLED   0x01