diff options
author | Andrew Tridgell <tridge@samba.org> | 2005-01-16 11:15:08 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:08:53 -0500 |
commit | 7cbc768376ed0a839afca64aeea99cd53d0fbc6f (patch) | |
tree | 116b18a6fc59ec306275f32c136201f83708e5fc /source4/include | |
parent | 6eabc2a711446819e0694bd56eb71ea7f101ae66 (diff) | |
download | samba-7cbc768376ed0a839afca64aeea99cd53d0fbc6f.tar.gz samba-7cbc768376ed0a839afca64aeea99cd53d0fbc6f.tar.bz2 samba-7cbc768376ed0a839afca64aeea99cd53d0fbc6f.zip |
r4777: added a smb_composite_sesssetup() async composite function. This
encapsulates all the different session setup methods, including the
multi-pass spnego code.
I have hooked this into all the places that previously used the
RAW_SESSSETUP_GENERIC method, and have removed the old
RAW_SESSSETUP_GENERIC code from clisession.c and clitree.c. A nice
side effect is that these two modules are now very simple again, back
to being "raw" session setup handling, which was what was originally
intended.
I have also used this to replace the session setup code in the
smb_composite_connect() code, and used that to build a very simple
replacement for smbcli_tree_full_connection().
As a result, smbclient, smbtorture and all our other SMB connection
code now goes via these composite async functions. That should give
them a good workout!
(This used to be commit 080d0518bc7d6fd4bc3ef783e7d4d2e3275d0799)
Diffstat (limited to 'source4/include')
-rw-r--r-- | source4/include/smb_interfaces.h | 23 | ||||
-rw-r--r-- | source4/include/structs.h | 1 |
2 files changed, 2 insertions, 22 deletions
diff --git a/source4/include/smb_interfaces.h b/source4/include/smb_interfaces.h index 5fae275f10..6bd061bef4 100644 --- a/source4/include/smb_interfaces.h +++ b/source4/include/smb_interfaces.h @@ -201,31 +201,10 @@ union smb_tcon { }; -enum smb_sesssetup_level {RAW_SESSSETUP_GENERIC, RAW_SESSSETUP_OLD, RAW_SESSSETUP_NT1, RAW_SESSSETUP_SPNEGO}; +enum smb_sesssetup_level {RAW_SESSSETUP_OLD, RAW_SESSSETUP_NT1, RAW_SESSSETUP_SPNEGO}; /* union used in session_setup call */ union smb_sesssetup { - - /* generic interface - used for auto selecting based on negotiated - protocol options */ - struct { - enum smb_sesssetup_level level; - - struct { - uint32_t sesskey; - uint32_t capabilities; - const char *password; - const char *user; - const char *domain; - } in; - struct { - uint16_t vuid; - char *os; - char *lanman; - char *domain; - } out; - } generic; - /* the pre-NT1 interface */ struct { enum smb_sesssetup_level level; diff --git a/source4/include/structs.h b/source4/include/structs.h index 2cffac1848..97449dc2b2 100644 --- a/source4/include/structs.h +++ b/source4/include/structs.h @@ -142,3 +142,4 @@ struct smbcli_composite; struct smb_composite_loadfile; struct smb_composite_savefile; struct smb_composite_connect; +struct smb_composite_sesssetup; |