1
0
mirror of https://github.com/samba-team/samba.git synced 2025-05-04 06:50:23 +03:00

988 Commits

Author SHA1 Message Date
Andrew Tridgell
23af074326 fixed ctemp in server and client. It turns out that ctemp on NT is completely broken, and it's pointless to emulate their brokenness completely in this case, but at least this makes us use approximately the same packet format. The spec is complelet wrong in this case
(This used to be commit 2d507ec669def6d49304559e53d6c14af9b290a9)
2001-09-17 04:23:48 +00:00
Andrew Bartlett
dec3cbcaf0 Fix up workstaion and kickoff time checks, moved to auth_smbpasswd.c where
they can have general effect.

Fixed up workstaion support in the rest of samba, so that we can do these
checks.

Pass through the workstation for cli_net_logon(), if supplied.
(This used to be commit 7f04a139b2ee34b4c282590509cdf21395815a7a)
2001-09-16 06:35:35 +00:00
Andrew Bartlett
4d89a65a84 Start pushing the NTSTATUS stuff out to the wire for session setups.
Rework the 'map to guest' code, its now possible to follow what its trying
to do...

Add an NT_STATUS_EQUAL(x,y) macro to make this stuff sane to look at.

Andrew Bartlett
(This used to be commit d618880661976644a6ee713edf969ad561e82097)
2001-09-16 02:35:55 +00:00
Andrew Bartlett
7892c494e7 Kill off the //server/share%user hack in share level security.
This should help make much of this code simpiler.

Andrew Bartlett
(This used to be commit fb0c3629c360fd0c57129500474960e6da6f9ef0)
2001-09-15 12:55:59 +00:00
Andrew Bartlett
eb8a3778d0 Oops... For reference, NTLMv2 passwords are > 24 chars in length, while
NTLMv1 passwords (and old LM passwords) are exactly 24 in lenghth.
(This used to be commit 51baa1614d1a338f50dbf8eaa5ea31ab58c11409)
2001-09-15 12:20:21 +00:00
Andrew Bartlett
90b5a6279e This looked suspicious now we are attempting to to NTLMv2.
Andrew Bartlett
(This used to be commit 21baa33946a24159ebe873ac37cf30581437aa1a)
2001-09-15 12:16:22 +00:00
Tim Potter
b800a36b1c Some patches to authentication:
- the usersupplied_info now contains a smb_username (as it comes across on
   the wire) and a unix_username (after being passed through mapping
   functions)

 - when doing security={server,domain} use the smb_username, otherwise use
   the unix_username
(This used to be commit d34fd8ec0716127c7a68eeb8e77d1ae8cc07b547)
2001-09-12 06:39:50 +00:00
Andrew Tridgell
65c5a1c0ba convert more code to using d_printf
(This used to be commit 60d297303488ed583537ca2853828fccd6da2ade)
2001-09-08 02:59:23 +00:00
Jeremy Allison
0135666934 #ifdef out function when not used.
Jeremy.
(This used to be commit fa8d626a2773569a454451e77ea56c707b33b69e)
2001-09-07 20:01:19 +00:00
Jeremy Allison
83ebf2b6b2 Fix the 62bit locking onto 32 bit NFS mounts problem generically for HPUX.
Don. please check this out.
Jeremy.
(This used to be commit ce9f95996498f7795aaef069e1443ea1c7d524b3)
2001-09-06 22:43:21 +00:00
Jeremy Allison
7e75921e24 Merge of transfer file code from 2.2, fix for readbraw.
Jeremy.
(This used to be commit c05e79453655abb67fd47a2d3dba88b4c5377e35)
2001-09-04 19:10:30 +00:00
Andrew Tridgell
19fea3242c the next stage in the NTSTATUS/WERROR change. smbd and nmbd now compile, but the client code still needs some work
(This used to be commit dcd6e735f709a9231860ceb9682db40ff26c9a66)
2001-09-04 07:13:01 +00:00
Andrew Tridgell
bd7ba65dda more NTSTATUS changes
(This used to be commit 8a49b2f7df46b2c990a980758fe1f3871e8b578e)
2001-09-01 23:06:57 +00:00
Jeremy Allison
4bd774f458 Fix crash bug with indirecting through null pointer on recursive delete.
Jeremy.
(This used to be commit a6f04d16613a06c1aafa89d7373d1e4b4a5fb45b)
2001-08-30 22:20:02 +00:00
Andrew Tridgell
ee5f7237de started converting NTSTATUS to be a structure on systems with gcc in order to make it type incompatible with BOOL so we catch errors sooner. This has already found a number of bugs
(This used to be commit 1b778bc7d22efff3f90dc450eb12baa1241cf68f)
2001-08-27 17:52:23 +00:00
Andrew Tridgell
e8e98c9ea0 converted smbd to use NTSTATUS by default
major changes include:

- added NSTATUS type
- added automatic mapping between dos and nt error codes
- changed all ERROR() calls to ERROR_DOS() and many to ERROR_NT()
  these calls auto-translate to the client error code system
- got rid of the cached error code and the writebmpx code

We eventually will need to also:
- get rid of BOOL, so we don't lose error info
- replace all ERROR_DOS() calls with ERROR_NT() calls

but that is too much for one night
(This used to be commit 83d9896c1ea8be796192b51a4678c2a3b87f7518)
2001-08-27 08:19:43 +00:00
Herb Lewis
717533483b get rid of compiler warnings
(This used to be commit 0768991d04ea03e774ca8662c9cae5e1951b88e0)
2001-08-24 20:32:01 +00:00
Andrew Tridgell
a22db179a9 flush on a invalid fsp should give an error
(This used to be commit ef5f4866fbbfa6be07cdc3e612a8899967d48289)
2001-08-24 04:56:33 +00:00
Andrew Bartlett
7495a1a894 Fix to only send the status32 error for status32 clients, not to other
nt_smb clients.  As spotted by Thursby.
(This used to be commit 22de76a920671614144babac9f589419532d8671)
2001-08-23 20:45:23 +00:00
Andrew Bartlett
2051bb7d03 A few changes:
drop paramaters:
 status
 utmp hostname

change session code to always record each vuid current on the server.  The sessionid struct is no longer packed, as I couldn't get that to work ;-)

change smbstatus to show this info and less of the connections.tdb info (its not actualy that accurate).

I'll get swat doing some of this shortly.
(This used to be commit b068ad300527c44673bbee0aede7849199c89de7)
2001-08-22 19:11:55 +00:00
Jean-François Micouleau
fe626d22bf The DELL powervault 705 is sending a tcon&x with the service name being
"share" instead of "\\server\share".
Fix that. Still not able to get the user list but that's something else.

Jeremy I don't think I broke anything ;-)

	J.F.
(This used to be commit 59018c58e4158e9ccb51c42ca32e490f32ee0def)
2001-08-22 13:08:01 +00:00
Andrew Tridgell
f9ce202810 two fixes for NT clients -> share level Samba server
(This used to be commit a25911d58c752350b62b205cfb0d6fc5b1c90cef)
2001-08-20 21:11:55 +00:00
Andrew Bartlett
578a39d44f smbd/auth_server: Doco, we want to use cli_nt_error here soon
smbd/password.c: We don't use globals here anymore

smbd/reply.c: Tidyness, global_myworkgroup must die!

smbd/service.c:  Move some of the make_connection code into a helper
                 function.
(This used to be commit 15c87e404fcaff9e360a40b8b673938c6e611daf)
2001-08-17 07:03:27 +00:00
Andrew Bartlett
90d2460cf0 One less getpwnam() call...
Andrew Bartlett
(This used to be commit 204da7ba96b0c562bab5e5536728a0378077bdc7)
2001-08-17 05:38:44 +00:00
Jeremy Allison
64c24ebf6d Always return NT_STATUS_DISK_FULL, even for quota errors.
Jeremy.
(This used to be commit e4a295b730b3d1ee784c896611d184c7699c74e7)
2001-08-07 19:18:27 +00:00
Jeremy Allison
0c218e1abe Added fixes to return correct error codes on space allocation fail.
Jeremy.
(This used to be commit 3bf2419f4b7a9d46a1d48062212a6a6579c22b92)
2001-08-07 01:19:32 +00:00
Jeremy Allison
4f415ef128 The write zero bytes is an allocate, not set EOF.
Jeremy.
(This used to be commit 28b4ee1eba5fbfd83c000a0e485632c477b7bfa9)
2001-08-03 19:32:33 +00:00
Andrew Bartlett
986372901e This is my 'Authentication Rewrite' version 1.01, mostly as submitted to
samba-technical a few weeks ago.

The idea here is to standardize the checking of user names and passwords,
thereby ensuring that all authtentications pass the same standards.  The
interface currently implemented in as

nt_status = check_password(user_info, server_info)

where user_info contains (mostly) the authentication data, and server_info
contains things like the user-id they got, and their resolved user name.

The current ugliness with the way the structures are created will be killed
the next revision, when they will be created and malloced by creator functions.

This patch also includes the first implementation of NTLMv2 in HEAD, but which
needs some more testing.  We also add a hack to allow plaintext passwords to be
compared with smbpasswd, not the system password database.

Finally, this patch probably reintroduces the PAM accounts bug we had in
2.2.0, I'll fix that once this hits the tree.  (I've just finished testing
it on a wide variety of platforms, so I want to get this patch in).
(This used to be commit b30b6202f31d339b48d51c0d38174cafd1cfcd42)
2001-08-03 13:09:23 +00:00
Andrew Tridgell
1d07607b39 we need to pull passwords in client charset for crypto to work
(This used to be commit 9a87d6f58fc005ddf2daf6fceb12a54fdc48f3b7)
2001-07-25 13:25:31 +00:00
Andrew Bartlett
9cbe6e8166 This patch fixes up a few issues where we would do lookups in the local system
on username we already know are perfectly valid, and in their final form.  In
particular we don't want to do a lookup for DOMAIN\nobody, it just does not
make sense, nor should we do map_username and the like if the username is as
specified in the vuid - we have done it already.

Andrew Bartlett
(This used to be commit 7cb517329b0fa2dec427a890a985c75cd467a3b0)
2001-07-21 02:23:19 +00:00
Jeremy Allison
1f9a689f1f Toomas Soome's fix for joining a domain the old way.
Jeremy.
(This used to be commit 8db233c8b5866df2b3f9f4ed64e7de95807cf371)
2001-07-11 18:52:43 +00:00
Andrew Bartlett
5b8d230e39 This removes unused paramaters from various authtication functions, and should
not change behaviour.

This should make my later diffs smaller, where I actualy start cleaning up this
mess...

Andrew Bartlett
(This used to be commit 04f090c224bb7ac3b53c430a591fce1fc939a81c)
2001-07-08 14:10:30 +00:00
Andrew Tridgell
7a58c800ed fixed bug where we looked at the first byte of a password to determine
if the password is blank. That ain't valid with encrypted passwords!

Jeremy, this changes the semantics of session setup. We no longer
automatically set guest=True when the client happens to choose their
username == the guest username. Instead we rely on the map_to_guest
code. I'm pretty sure this is now the right thing, but please look at
it carefully before putting it in 2.2

This is the bug that was causing the build farm to sometimes
fail. Basically we failed every 256 attempts - ie. when the first byte
of the encrypted password happened to be 0
(This used to be commit 4b35a3494c53fe38532fc12cf1c57e1a3715ad0f)
2001-07-06 04:08:24 +00:00
Jeremy Allison
aff5f5c158 Fix for rabbit-pellet mode. Chris please test this. Thanks for Dave CB
for help on this.
Jeremy.
(This used to be commit 7efaefdf60e1880cf4ab97e1901248abd00acd79)
2001-07-05 18:07:46 +00:00
Andrew Tridgell
8ffcec213e fixed a bug in the parameters SMBctemp uses in open_file_shared()
(This used to be commit a1dee993cbf52e7232b65323430c8574843eb168)
2001-07-05 06:39:15 +00:00
Andrew Tridgell
55bd0867d8 use alpha_strcpy on the domain as it comes off the wire
(This used to be commit 3b9eb528f56b325399e5a4588242bb6d9f9226e2)
2001-07-05 04:34:50 +00:00
Andrew Tridgell
527e824293 strchr and strrchr are macros when compiling with optimisation in gcc, so we can't redefine them. damn.
(This used to be commit c41fc06376d1a2b83690612304e85010b5e5f3cf)
2001-07-04 07:36:09 +00:00
Andrew Tridgell
87fbb7092b The big character set handling changeover!
This commit gets rid of all our old codepage handling and replaces it with
iconv. All internal strings in Samba are now in "unix" charset, which may
be multi-byte. See internals.doc and my posting to samba-technical for
a more complete explanation.
(This used to be commit debb471267960e56005a741817ebd227ecfc512a)
2001-07-04 07:15:53 +00:00
Andrew Tridgell
59db9bcbf0 check for bad usernames early in session setup
(This used to be commit 657836599a847578096696af27cd7c9f0d52c931)
2001-07-04 04:17:58 +00:00
Jeremy Allison
0eb28dc851 Fixed incorrect debug parameters for lock_pid.
Jeremy.
(This used to be commit 310d2af6b0797cbd4f776b5c6c5b90a5d86b1aa9)
2001-07-03 17:40:43 +00:00
Jeremy Allison
5b69009b25 Fixed the nastiest locking bug to track down.... smb_pids are sent in the
lockingX calls - use that instead of smb_pid in the packet.
Jeremy.
(This used to be commit a3925cb9c6303ce24e5fecad6c8f3a0ba78b9ee0)
2001-07-02 02:42:41 +00:00
Jeremy Allison
d1f38ac531 Fixed the first locking error (test #8 found by locktest code from
Clarion locktest.
Jeremy.
(This used to be commit 5c42845b5bb6fafd0ebf93fbdd23d9bf861da865)
2001-06-30 01:59:48 +00:00
Jeremy Allison
629a59fe85 Always use DOMAIN\user first that this is the more specific case.
Jeremy.
(This used to be commit 52143c08536a5f5d888b78b4769c06f7a0a2992b)
2001-06-26 06:06:42 +00:00
Jeremy Allison
08bda36755 Log debug before and after netbios names copied so we know if they've been
changed.
Jeremy.
(This used to be commit f8c121c69c9561f011a0e08a9d0beaf1cefd1667)
2001-06-23 20:01:23 +00:00
Jeremy Allison
37eb0d6c74 Added other_safe_chars to alpha_strcpy(). Needs testing but is a better
fix for the problem.
Jeremy.
(This used to be commit e059fffd03a1382fb2b7059b6de369d9fc765a17)
2001-06-23 07:22:16 +00:00
Jeremy Allison
7133aed083 Better fix for client name vulnarability.
Jeremy.
(This used to be commit 17c3faa367328d186d10f59f08549de0c608b16a)
2001-06-23 00:22:14 +00:00
Jeremy Allison
100a54e221 Andrew - please look this over. I've fixed a long standing (maybe 4-5
years old) bug when chainging a sessionsetup_and_X and tcon together.
The wrong username was being entered into the tdb, even though the
correct user was used for accessing files. This is related to the fact
that authorise_login() is not used for sessionsetup, but only for tcon
auths.
Jeremy.
(This used to be commit 0187cd6aef7586d7ad4bdc70c50f3f2e7c69519c)
2001-06-22 00:57:59 +00:00
Jeremy Allison
fda0f83d75 Following info from TAKAHASHI Motonobu <monyo@samba.gr.jp>,
Samba Users Group Japan, ensure that we don't use dos_to_unix(xx,True),
but always use dos_to_unix(xx,False) to prevent overwriting.
Jeremy.
(This used to be commit 244aec8ea623fec828add3ab09c5003bf32bd5c7)
2001-06-21 01:01:15 +00:00
Jeremy Allison
850a0e27e1 Extra debug in open.c, fix for bad debug message in reply.c
Jeremy.
(This used to be commit 2c2fc8513699eb39721ac1d65fa1fdaecde526a8)
2001-06-19 07:31:55 +00:00
Tim Potter
10f8162124 Removed commented out msdfs code that was being called anyway.
(This used to be commit a542f4513ab792363fd5772582c6d317aa913257)
2001-06-12 09:51:03 +00:00