1
0
mirror of https://github.com/samba-team/samba.git synced 2025-11-22 16:23:49 +03:00
Commit Graph

268 Commits

Author SHA1 Message Date
Stefan Metzmacher
0383218a00 r11744: make sure the session is completed authenticated!!!
metze
2007-10-10 13:46:20 -05:00
Stefan Metzmacher
96345b1c46 r11724: - move checks packet size and protocol version,
before we create the request structure
- move code into one function

metze
2007-10-10 13:46:18 -05:00
Andrew Tridgell
6a47cd65a8 r11713: separate out the setting of the fde in the packet context from the
enabling of packet serialisation
2007-10-10 13:46:17 -05:00
Stefan Metzmacher
d677ebf43d r11650: - as every call that goes down to the ntvfs layer need a valid tcon and session
ntcancel also needs to have AS_USER
- move the SIGNING_NO_REPLY logic as global option, because this needs to be set
  for the error replies too.
- as we currently don't know how to generate signatures for ntcancel replies
  we just skip the sending of the reply
- w2k3 first checks the VUID and then the TID, so we do now
- ntcreateX also uses ERRbaduid when getting a wrong VUID

metze
2007-10-10 13:46:08 -05:00
Stefan Metzmacher
0c520e19a0 r11646: fix typos
metze
2007-10-10 13:46:07 -05:00
Stefan Metzmacher
913d5356eb r11643: fix compiler warnings
metze
2007-10-10 13:46:07 -05:00
Stefan Metzmacher
9399e4d260 r11641: remove unused parameter vuid
metze
2007-10-10 13:46:05 -05:00
Stefan Metzmacher
5fb5d1a864 r11640: just a nicer format, and make adding more special cases easier
metze
2007-10-10 13:46:05 -05:00
Stefan Metzmacher
3389544c2b r11637: we need a session and a tcon for ntioctl() and ntrename()
metze
2007-10-10 13:46:03 -05:00
Andrew Tridgell
6ab8082234 r11621: some minor fixes from comments by metze 2007-10-10 13:45:59 -05:00
Andrew Tridgell
9eee7bafa1 r11607: switched the smb server to use the generic packet send code 2007-10-10 13:45:58 -05:00
Andrew Tridgell
0fc496bb6f r11603: converted the smb server to use the new generic packet code 2007-10-10 13:45:57 -05:00
Andrew Bartlett
abff53b633 r11367: Ensure to intialise the new logon_parameters (0 for session setups).
Andrew Bartlett
2007-10-10 13:45:26 -05:00
Jelmer Vernooij
24e1030090 r11244: Relative path names in .mk files 2007-10-10 13:45:06 -05:00
Jelmer Vernooij
7fffc5c917 r11214: Remove scons files (see http://lists.samba.org/archive/samba-technical/2005-October/043443.html) 2007-10-10 13:45:03 -05:00
Andrew Bartlett
205f77c579 r11200: Reposition the creation of the kerberos keytab for GSSAPI and Krb5
authentication.  This pulls the creating of the keytab back to the
credentials code, and removes the special case of 'use keberos keytab
= yes' for now.

This allows (and requires) the callers to specify the credentials for
the server credentails to GENSEC.  This allows kpasswdd (soon to be
added) to use a different set of kerberos credentials.

The 'use kerberos keytab' code will be moved into the credentials
layer, as the layers below now expect a keytab.

We also now allow for the old secret to be stored into the
credentials, allowing service password changes.

Andrew Bartlett
2007-10-10 13:45:00 -05:00
Volker Lendecke
256cf928d7 r11120: calling_name is used later in sesssetup_nt1, so hang the names to the right
talloc context.

Volker
2007-10-10 13:44:53 -05:00
Andrew Bartlett
11957c5f37 r10946: Use the right name for the remote workstation, and always initialise it.
Should fix a valgrind error volker is seeing.

Andrew Bartlett
2007-10-10 13:39:44 -05:00
Jelmer Vernooij
d2f80c0457 r10588: Remove more unused files, macros 2007-10-10 13:39:08 -05:00
Jelmer Vernooij
b53313dc51 r10586: Add MergedObject() builder. Default to Library() rather
then StaticLibrary()
2007-10-10 13:39:08 -05:00
Jelmer Vernooij
a5b88bcd42 r10513: Reduce some use of pstring. The main reason some parts of the code still
use pstring is next_token() now.
2007-10-10 13:38:58 -05:00
Jelmer Vernooij
4f0d7f75b9 r10348: Add scons scripts for remaining subsystems. Most subsystems build now,
but final linking still fails (as does generating files asn1, et, idl and proto
files)
2007-10-10 13:38:30 -05:00
Tim Potter
5f1cd6382c r10256: Fix some unhandled enumeration warnings. There's one still left,
RAW_SEARCH_UNIX_INFO find_fill_info(), which I think is a bug.
2007-10-10 13:38:12 -05:00
Alexander Bokovoy
95d96c79a5 r9321: Fix potential bug found by Coverity. src_len has to be int but later we do pass it as size_t. In case src_len is negative, we need to register a failure and return to the caller 2007-10-10 13:33:24 -05:00
Andrew Tridgell
cf1a7bbe96 r8893: fixed the valgrind error on stream termination due to prototol errors 2007-10-10 13:30:15 -05:00
Jelmer Vernooij
fac77f5fa2 r8811: Fix the build.. 2007-10-10 13:30:07 -05:00
Andrew Bartlett
c3cc14542e r8706: My previous patch oversimplied the previous change to session setup -
we didn't cope with the 'anonymous NTLM under SPNEGO' login.

Andrew Bartlett
2007-10-10 13:29:56 -05:00
Andrew Bartlett
ecbd2235a3 r8700: Propmted by tridge's need to do plaintext auth in ejs, rework the
user_info strcture in auth/

This moves it to a pattern much like that found in ntvfs, with
functions to migrate between PAIN, HASH and RESPONSE passwords.

Instead of make_user_info*() functions, we simply fill in the control
block in the callers, per recent dicussions on the lists.  This
removed a lot of data copies as well as error paths, as we can grab
much of it with talloc.

Andrew Bartlett
2007-10-10 13:29:55 -05:00
Andrew Tridgell
b1d577f48d r8658: move use of lp_security() and lp_nt_status_support() into the connection structure.
This massively reduces the number of lp_*() calls made
2007-10-10 13:29:50 -05:00
Andrew Tridgell
b40fb6a456 r8627: fixed a big memory leak in the spnego gensec code in session
setup. Andrew, please check over this.

What happens is this:

 - run the BASE-SECLEAK test
 - with each failed session setup using spnego a gensec ctx is leaked into the smb_conn structure
 - after the client disconnects these are finally cleaned up as they
   are all children of the connection structure
 - the cleanup of the millions of memory objects takes long enough
   that the next operation in test_posix.sh sometimes fails with a timeout

Andrew, can you also look at the talloc_reference() on line 332 of
sesssetup.c ? I suspect it isn't needed (I don't think it does any
actual harm though)
2007-10-10 13:29:45 -05:00
Andrew Tridgell
658befc1e4 r8577: added management calls to list current tree connects 2007-10-10 13:29:40 -05:00
Andrew Tridgell
391cfe3c96 r8574: added server side irpc calls for listing the current sessions 2007-10-10 13:29:39 -05:00
Andrew Tridgell
9eebd240d8 r8527: found an uninitialised variable in 'make valgrindtest' 2007-10-10 13:29:35 -05:00
Andrew Tridgell
adae47c829 r8487: kfixed a typo 2007-10-10 13:23:08 -05:00
Andrew Tridgell
8f69867867 r8272: added the hooks for adding a name to a messaging context, so we will
be able to send a message to the "ldap_server" task without having to
know its task ID.
2007-10-10 13:19:29 -05:00
Andrew Tridgell
5521060c08 r8119: fixed two error code returns in the smb server now that we have
torture code that can tell the difference between dos and ntstatus
codes without mapping
2007-10-10 13:19:10 -05:00
Stefan Metzmacher
a2e34475d7 r8028: fix a crash bug in ulogoff, when the tree_connect failed before
metze
2007-10-10 13:19:00 -05:00
Andrew Tridgell
6ee98c5f65 r7857: improved the handling of end-of-file on sockets in the smb server 2007-10-10 13:18:43 -05:00
Andrew Tridgell
45487e8a14 r7782: fixed an ordering problem with smb requests. I found this when I had "sam database"
set to the internal ldap server over loopback. The following happened:

  - DCERPC_AUTH3 request
     - auth requests calls ldb
     - ldb calls ldap
     - ldap calls our internal ldap server, triggering events
  - samrConnect from client
     - connect refused
  - SMBclose from client
     - causes dcerpc_pipe to be destroyed
  - AUTH3 continues
     - dies on freed pipe

I chose this solution as it provides a guarantee that backends only have to think about
async issues when they mark a request async. When they don't, this code guarantees that
a second request won't happen on the same connection while processing the first one
2007-10-10 13:18:36 -05:00
Andrew Bartlett
eb1d37c5a9 r7676: Make VUID and TID choice random, as this gives us protection against
replay attacks under SMB signing, where the session key is a fixed
derivitive of the user's password.

This removes the VID offset, but I'm not worried about random client
bytes mattering here, given the space (and the fact that it applies to
very, very old clients).

Andrew Bartlett
2007-10-10 13:18:21 -05:00
Andrew Bartlett
36dc2491d7 r7675: Use correct memory context for anonymous session setup auth context
(no need for it to hang around forever).

Add test for this behaviour.

Andrew Bartlett
2007-10-10 13:18:21 -05:00
Andrew Tridgell
3a3025485b r7633: this patch started as an attempt to make the dcerpc code use a given
event_context for the socket_connect() call, so that when things that
use dcerpc are running alongside anything else it doesn't block the
whole process during a connect.

Then of course I needed to change any code that created a dcerpc
connection (such as the auth code) to also take an event context, and
anything that called that and so on .... thus the size of the patch.

There were 3 places where I punted:

  - abartlet wanted me to add a gensec_set_event_context() call
    instead of adding it to the gensec init calls. Andrew, my
    apologies for not doing this. I didn't do it as adding a new
    parameter allowed me to catch all the callers with the
    compiler. Now that its done, we could go back and use
    gensec_set_event_context()

  - the ejs code calls auth initialisation, which means it should pass
    in the event context from the web server. I punted on that. Needs fixing.

  - I used a NULL event context in dcom_get_pipe(). This is equivalent
    to what we did already, but should be fixed to use a callers event
    context. Jelmer, can you think of a clean way to do that?

I also cleaned up a couple of things:

 - libnet_context_destroy() makes no sense. I removed it.

 - removed some unused vars in various places
2007-10-10 13:18:15 -05:00
Stefan Metzmacher
d9a0c61801 r7631: - remove unused function, as the disgn of samba4 doesn't allow the old style
auto homedir share stuff
- add TODO: for checking the password on share mode security

metze
2007-10-10 13:18:15 -05:00
Andrew Tridgell
9dab036fbe r7523: blergh
the error code for an invalid tid depends on the command
2007-10-10 13:18:06 -05:00
Andrew Tridgell
79112d81cb r7510: fixed error code for using a bad tid.
amazingly, I have seen w2k do a session setup followed by an immediate
attempted opening of \netlogon, with no tconx to ipc$ first. So this
error code can matter.
2007-10-10 13:18:02 -05:00
Simo Sorce
615618f192 r7222: remove double call to the same function in the same place, probable cut&paste error 2007-10-10 13:17:27 -05:00
Andrew Tridgell
2acc069185 r6342: fixed a bad union assumption that caused ACLs to fail on 64 bit machines
Thanks to lars and agruen for finding this
2007-10-10 13:11:33 -05:00
Andrew Bartlett
c2c8b6abf3 r6313: Much better handling of LogoffAndX when the vuid is invalid (ie, don't
segfault).  This should fix another of the issues that Richard came up
with last week.

Andrew Bartlett
2007-10-10 13:11:30 -05:00
Andrew Bartlett
c67a9370c4 r6312: Metze reminds me this header is no longer required.
Andrew Bartlett
2007-10-10 13:11:30 -05:00
Andrew Bartlett
0cbd11a0f2 r6310: Rename password.c to session.c, and remove the linked list of all
outstanding sessions, as we don't use it.

Andrew Bartlett
2007-10-10 13:11:30 -05:00