clientgen.c: Added cli_ulogoff() call.
authorJeremy Allison <jra@samba.org>
Tue, 21 Apr 1998 02:23:24 +0000 (02:23 +0000)
committerJeremy Allison <jra@samba.org>
Tue, 21 Apr 1998 02:23:24 +0000 (02:23 +0000)
password.c: Added call to cli_ulogoff on successfull sessionsetup.
Jeremy.
(This used to be commit 77882f002b2a8203aad419e485fc885303d999a0)

source3/include/proto.h
source3/libsmb/clientgen.c
source3/smbd/password.c

index 433e833c3117643e6321f9ac7b9cb429b733cb64..da1293fa69513209f54aa057884d8ef61cbbbe2d 100644 (file)
@@ -65,6 +65,7 @@ BOOL cli_session_setup(struct cli_state *cli,
                       char *pass, int passlen,
                       char *ntpass, int ntpasslen,
                       char *workgroup);
+BOOL cli_ulogoff(struct cli_state *cli);
 BOOL cli_send_tconX(struct cli_state *cli, 
                    char *share, char *dev, char *pass, int passlen);
 BOOL cli_tdis(struct cli_state *cli);
index 1f2f74657693da8881abd3a769ee069baad1fb77..ea51395a8f9c37a56a9c53ea00d61c22d67867f2 100644 (file)
@@ -528,6 +528,25 @@ BOOL cli_session_setup(struct cli_state *cli,
       return True;
 }
 
+/****************************************************************************
+ Send a uloggoff.
+*****************************************************************************/
+
+BOOL cli_ulogoff(struct cli_state *cli)
+{
+        bzero(cli->outbuf,smb_size);
+        set_message(cli->outbuf,2,0,True);
+        CVAL(cli->outbuf,smb_com) = SMBulogoffX;
+        cli_setup_packet(cli);
+       SSVAL(cli->outbuf,smb_vwv0,0xFF);
+       SSVAL(cli->outbuf,smb_vwv2,0);  /* no additional info */
+
+        send_smb(cli->fd,cli->outbuf);
+        if (!client_receive_smb(cli->fd,cli->inbuf,cli->timeout))
+                return False;
+
+        return CVAL(cli->inbuf,smb_rcls) == 0;
+}
 
 /****************************************************************************
 send a tconX
index fe3ac5c765c145a09236303494dd93288deac677..b4d728d0c29278f961aed0b2bd502bd39950afa4 100644 (file)
@@ -1816,6 +1816,7 @@ BOOL server_validate(char *user, char *domain,
        DEBUG(3,("password server %s accepted the password\n", cli.desthost));
 
        cli_tdis(&cli);
+        cli_ulogoff(&cli);
 
        return(True);
 }