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

70 Commits

Author SHA1 Message Date
Andrew Bartlett
35b83eb329 r1521: Updates to our SMB signing code.
- This causes our client and server code to use the same core code,
  with the same debugs etc.
- In turn, this will allow the 'mandetory/fallback' signing algorithms
  to be shared, and only written once.

Updates to the SPNEGO code
- Don't wrap an empty token to the server, if we are actually already finished.

Andrew Bartlett
2007-10-10 12:57:39 -05:00
Stefan Metzmacher
463982bf3f r1494: fix debug message
metze
2007-10-10 12:57:35 -05:00
Andrew Bartlett
de5da66939 r1475: More kerberos work
- We can now connect to hosts that follow the SPNEGO RFC, and *do not*
give us their principal name in the mechListMIC.
 - The client code now remembers the hostname it connects to

- We now kinit for a user, if there is not valid ticket already

- Re-introduce clock skew compensation

TODO:
 - See if the username in the ccache matches the username specified
 - Use a private ccache, rather then the global one, for a 'new' kinit
 - Determine 'default' usernames.
  - The default for Krb5 is the one in the ccache, then $USER
  - For NTLMSSP, it's just $USER

Andrew Bartlett
2007-10-10 12:57:34 -05:00
Stefan Metzmacher
ffb7ba35cd r1469: fix a segfault and compiler warning,
introduced by the "compiler warning fix" in rev 1460...

metze
2007-10-10 12:57:33 -05:00
Andrew Bartlett
cea578d6f3 r1462: GENSEC Kerberos and SPENGO work:
- Spelling - it's SPNEGO, not SPENGO
 - SMB signing - Krb5 logins are now correctly signed
 - SPNEGO - Changes to always tell GENSEC about incoming packets, empty or not.

Andrew Bartlett
2007-10-10 12:57:32 -05:00
Andrew Bartlett
10a973da88 r1460: Avoid a compile warning.
Andrew Bartlett
2007-10-10 12:57:32 -05:00
Stefan Metzmacher
e3760fcc17 r1409: if we have no user name don't use extended security
the capabilities in the union smb_sesssetup should be used to decide
if we can use extented security

metze
2007-10-10 12:56:54 -05:00
Stefan Metzmacher
e06898f88c r1406: I got spnego in the smb client working
so I set 'use spnego = True'

metze
2007-10-10 12:56:54 -05:00
Stefan Metzmacher
38e00f8719 r1348: get gensec backend by OID instead of name
metze
2007-10-10 12:56:51 -05:00
Stefan Metzmacher
2445cceba9 r1345: add extended security spnego support to the smb client
code

set lp_use_spnego = False, because I can't get it working yet
but I commit it so others can help me

metze
2007-10-10 12:56:51 -05:00
Tim Potter
de5984c956 r1268: varient -> variant 2007-10-10 12:56:46 -05:00
Andrew Bartlett
58da78a746 r1198: Merge the Samba 3.0 ntlm_auth, including the kerberos and SPENGO parts.
I have moved the SPNEGO and Kerberos code into libcli/auth, and intend
to refactor them into the same format as NTLMSSP.

Andrew Bartlett
2007-10-10 12:56:44 -05:00
Jeremy Allison
5c3a2417cf r1091: Added in timing tests for deferred opens. Added extra debug info to signing
mistakes.
Jeremy.
2007-10-10 12:56:37 -05:00
Stefan Metzmacher
57151e80eb r962: convert 'unsigned' and 'unsigned int' to uint_t
metze
2007-10-10 12:56:23 -05:00
Stefan Metzmacher
9f914e4af9 r961: convert 'uchar' to 'uint8_t'
metze
2007-10-10 12:56:23 -05:00
Stefan Metzmacher
b5378803fd r943: change samba4 to use 'uint8_t' instead of 'unsigned char'
metze
2007-10-10 12:56:21 -05:00
Andrew Tridgell
66eb46dbb1 r893: a few more _t conversions 2007-10-10 12:56:18 -05:00
Gerald Carter
8b6c048a02 r891: fix compile 2007-10-10 12:56:17 -05:00
Stefan Metzmacher
2986c5f08c r890: convert samba4 to use [u]int8_t instead of [u]int8
metze
2007-10-10 12:56:16 -05:00
Stefan Metzmacher
af6f1f8a01 r889: convert samba4 to use [u]int16_t instead of [u]int16
metze
2007-10-10 12:56:16 -05:00
Stefan Metzmacher
0e5517d937 r884: convert samba4 to use [u]int32_t instead of [u]int32
metze
2007-10-10 12:56:15 -05:00
Andrew Tridgell
9a9244a1c6 r873: converted samba4 to use real 64 bit integers instead of
structures. This was suggested by metze recently.

I checked on the build farm and all the machines we have support 64
bit ints, and support the LL suffix for 64 bit constants. I suspect
some won't support strtoll() and related functions, so we will
probably need replacements for those.
2007-10-10 12:56:14 -05:00
Andrew Bartlett
62eef851fd r719: Follow the trend - remove more unused functions.
Andrew Bartlett
2007-10-10 12:53:45 -05:00
Andrew Bartlett
44f8b5b53e r610: - Merge the Samba3 'ntlm_auth --diagnostics' testsuite to Samba4.
- This required using NETLOGON_NEG_AUTH2_FLAGS for the
    SetupCredentials2 negotiation flags, which is what Samba3 does,
    because otherwise the server uses different crypto.
  - This tests the returned session keys, which we decrypt.

 - Update the Samba4 notion of a 'session key' to be a DATA_BLOB in
   most places.

 - Fix session key code to return NT_STATUS_NO_SESSION_KEY if none is
   available.

 - Remove a useless argument to SMBsesskeygen_ntv1

 - move netr_CredentialState from the .idl to the new credentials.h

Andrew Bartlett
2007-10-10 12:51:51 -05:00
Andrew Tridgell
925bc2622c r335: added much better handling of servers that die unexpectedly during a
request (a dead socket). I discovered this when testing against Sun's
PC-NetLink.

cleaned up the naming of some of the samr requests

add IDL and test code for samr_QueryGroupMember(),
samr_SetMemberAttributesOfGroup() and samr_Shutdown().  (actually, I
didn't leave the samr_Shutdown() test in, as its fatal to windows
servers due to doing exactly what it says it does).
2007-10-10 12:51:33 -05:00
Jeremy Allison
4d0ed04c54 r204: Turns out that the string in the SEARCH unix_info level is that
rare thing, a non-length string (ie. not a WIRE_STRING) but a null
terminated char string. There wasn't a good interface to pull that
out of a blob (all the string interfaces assumed WIRE_STRINGS). Added
a new one, only used for this call. Sucks, I know - but the alternatives
suck more. Added tests for some of the unix info returned.
Jeremy.
2007-10-10 12:51:16 -05:00
Jeremy Allison
a25ae9addb r189: Added UNIX search into tests - added client library parse code.
Jeremy.
2007-10-10 12:51:15 -05:00
Andrew Tridgell
af34710d4d r152: a quick airport commit ....
added ldbedit, a _really_ useful command

added ldbadd, ldbdel, ldbsearch and ldbmodify to build

solved lots of timezone issues, we now pass the torture tests with
client and server in different zones

fixed several build issues

I know this breaks the no-LDAP build. Wait till I arrive in San Jose for that
fix.
2007-10-10 12:51:11 -05:00
Andrew Tridgell
f6cf9020c8 r100: remember the user session key during session setup so it can be used in various crypto
routines
2007-10-10 12:51:06 -05:00
Andrew Tridgell
06a8100e6a fixed the handling of level II oplocks in samba4, especially when
acting as a cifs redirectory (using the cifs backend)
-
Andrew Tridgell
9ea20d0c9a fixed two writex client bugs
- always use the 14 word writex varient even for small transfers as
   long as large offsets are negotiated (this matches windows
   behaviour)

 - make sure we fill in the top 16 bits of the count for large writex
   calls
-
Andrew Tridgell
138cb5f2f5 fixed a problem with the smb client code spinning when the connection
is lost. We now close the cli_transport when there is a socket io
error
-
Stefan Metzmacher
64b5bfcd73 merge:
ldap and krb5 configure tests
libads/*.c and libcli/raw/clikrb5.c from 3.0

metze
-
Andrew Tridgell
7cbc4ad871 * fixed a segv when -U is not used in smbtorture.
* fixed the handling of anonymous logins
-
Tim Potter
b63ebaa770 Autodetect service_type in cli_tree_full_connection() if the caller
passes in NULL.
-
Andrew Tridgell
bb1af644a5 a fairly large commit!
This adds support for bigendian rpc in the client. I have installed
SUN pcnetlink locally and am using it to test the samba4 rpc
code. This allows us to easily find places where we have stuffed up
the types (such as 2 uint16 versus a uint32), as testing both
big-endian and little-endian easily shows which is correct. I have now
used this to fix several bugs like that in the samba4 IDL.

In order to make this work I also had to redefine a GUID as a true
structure, not a blob. From the pcnetlink wire it is clear that it is
indeed defined as a structure (the byte order changes). This required
changing lots of Samba code to use a GUID as a structure.

I also had to fix the if_version code in dcerpc syntax IDs, as it
turns out they are a single uint32 not two uint16s.

The big-endian support is a bit ugly at the moment, and breaks the
layering in some places. More work is needed, especially on the server
side.
-
Andrew Tridgell
4929c53bc8 the next step in the dcerpc server code. Added the link between the
IPC IO routines and the dcerpc endpoint servers.
-
Andrew Tridgell
f2d3dc9893 * patch based on work by Jim Myers to unify the ioctl handling to be
more like the other major SMB functions

* added SMBntrename code
-
Andrew Tridgell
8246e6ca0b fixed default port handling pointed out by Tom Jansen -
Andrew Tridgell
48028fbb85 make the socket send code a little clearer -
Andrew Tridgell
4dcc06d04c updated copyright year -
Andrew Tridgell
d5a15257fd security descriptors are no longer a "special" type, they are handled
using the [relative] property

this also fixes level3 of PrinterInfo (a relative secdesc)
-
Andrew Tridgell
186ddbbf87 added OpenPrinter and a test function. Note that the Samba3 structure
for OpenPrinter was wrong.
-
Andrew Tridgell
3983b2aee7 - corrected some lsa idl
- updated lsa parse code from pidl
-
Andrew Tridgell
6b222d3b65 another major bit of restructuring of rpc in Samba4. Mostly moving
files around, but also added the first bits of auto-generated code for
the lsa pipe.

I haven't updated the Makefile to call pidl yet, so for now the code
was cut-and-pasted into librpc/ndr/ndr_lsa.c manually
-
Andrew Tridgell
ca5f0ccb6c fixed some error found by valgrind -
Andrew Tridgell
25a8692fed lsa_EnumSids() now works -
Andrew Tridgell
f5bd301ff7 yipee! we can now do lsaOpenPolicy() via the new interfaces, without
using any of the old lsa code
-
Andrew Tridgell
f51a216136 added support for fragmented sends -
Andrew Tridgell
a9aa7954fe added fragmentation support on receive for dcerpc packets. I have
successfully used SourceData with 200M of data in rpcecho
-