1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-28 17:47:29 +03:00

578 Commits

Author SHA1 Message Date
Jeremy Allison
2a664807c5 Fixed the error bad path for recursive mkdir so mkdir \a\b\c\d works.
Forward ported some of the code tidyups from 2.2.
Jeremy.
(This used to be commit 2475c09b354cc7b5f4ce384e4497207d30f619bb)
2002-04-02 19:34:36 +00:00
Jeremy Allison
8f9d7ebb35 Removed unused variable.
Jeremy.
(This used to be commit 4eb29ac559faf29b348a4097a33f9cbf4cf9d057)
2002-03-26 03:07:51 +00:00
Jeremy Allison
c90cd26e94 Fix the mp3 rename bug - also tidy up our open code and remove the special
cases for rename and unlink. Had to add desired_access into the share mode record.
Jeremy.
(This used to be commit 3b1b8ac43535fb0839c5474fa55bf7150f6cde31)
2002-03-23 02:57:44 +00:00
Jeremy Allison
b9e91d2a8e Remove the "stat open" code - make it inline. This should fix the
bugs with opening and renaming mp3 files, also the word rename
problems that people have had for a while.
Needs a make clean :-) make.
Also added JohnR's printing fix.
Jeremy.
(This used to be commit 504e5ef0494c54efbd0357e334cb2aa5a9eb9c14)
2002-03-20 00:46:53 +00:00
Jeremy Allison
ffadd471b9 Sync up vfs changes from 2.2.x.
Jeremy.
(This used to be commit ad1e858d8e72adf924ff435eab8da3e60842e2e6)
2002-03-19 02:32:39 +00:00
Tim Potter
ab13654dc9 Renamed get_nt_error_msg() to nt_errstr().
(This used to be commit 1f007d3ed41c1b71a89fa6be7d173e67e927c302)
2002-03-17 04:36:35 +00:00
Gerald Carter
65c007b583 syncing up printing code with SAMBA_2_2 (already done some merges
in the reverse).

  * add in new printer change notify code from SAMBA_2_2

  * add in se_map_standard() from 2.2 in _spoolss_open_printer_ex()

  * sync up the _print_queue_struct in smb.h (why did someone change the
    user/file names in fs_user/fs_file (or vice-versa) ? )

  * sync up some cli_spoolss_XXX functions
(This used to be commit 5760315c1de4033fdc22684c940f18010010924f)
2002-03-15 08:14:10 +00:00
Tim Potter
2ba1950c79 Fixed bodgy printf arguments in debug statment.
Who would have guessed it - we now use floating point maths in Samba.
(This used to be commit 6a053fa770b69f21fef52966a0b577b7ac9e817e)
2002-03-13 22:55:47 +00:00
Jeremy Allison
5e3b923124 include/smb_macros.h: Don't round up an allocation if the size is zero.
"One of these locks is not like the others... One of these locks is not
quite the same" :-). When is a zero timeout lock not zero ? When it's
being processed by Windows 2000 of course.. This code change, ugly though
it is - completely fixes the foxpro/access multi-user file system database
problems that people have been having. I used a *wonderful* test program
donated by "Gerald Drouillard" <gerald@drouillard.ca> which allowed me
to completely reproduce this problem, and to finally determine the correct
fix. This also explains why Windows 2000 is *so slow* when responding to
the smbtorture lock tests. I *love* it when all these things come together
and finally make sense :-).
Jeremy.
(This used to be commit 8aa9860ea2ea7f5aed4b6aa12794fffdfa81b0d0)
2002-03-13 20:28:19 +00:00
Andrew Tridgell
57970fd4e2 make sure we give an error for unknown lockingX locktype bits
(This used to be commit 72cb43b912a4c1831f9d7b2fd23ce51aebb09c8f)
2002-03-11 01:34:14 +00:00
Jeremy Allison
5d1db25abd Mask off the aDIR on setfileinfo.
Jeremy.
(This used to be commit d9cb1bf20ac8a739102b03d9a70e34fe5cb2f0f7)
2002-03-05 01:43:50 +00:00
Jeremy Allison
2da4d64cfc Added "nt status support" parameter. Fix offline synchronisation.
Jeremy.
(This used to be commit 9243a9778e52999d5c62cba484640637b24994d8)
2002-02-27 21:46:53 +00:00
Tim Potter
cd68afe312 Removed version number from file header.
Changed "SMB/Netbios" to "SMB/CIFS" in file header.
(This used to be commit 6a58c9bd06d0d7502a24bf5ce5a2faf0a146edfa)
2002-01-30 06:08:46 +00:00
Jeremy Allison
9d8ed7220f Fixed display of "remote downlevel document" in old print job submission
case.
Jeremy.
(This used to be commit 248770d73072e36fd9812ec5986dce5380dfab33)
2002-01-25 20:16:14 +00:00
Jeremy Allison
d6823366b8 Same fix as went into 2.2 (I'm waiting for jerry to finish some code).
Jeremy.
(This used to be commit 01ff6ce4963e1daff019f2b936cef218e1c93f67)
2002-01-11 19:10:25 +00:00
Jeremy Allison
e86102e868 Missed error return is can_rename fails.
Jeremy.
(This used to be commit 2db99fa49b538e230f2c606d1004871111ea2bf6)
2002-01-04 22:30:00 +00:00
Jeremy Allison
eb61d92ca7 Re-wrote the guts of the rename_internals code to cope with a reported
bug (renaming name -> name was failing, on W2K it succeeds). Simplified
the common case, did a lot of work to ensure NT error codes are correctly
reported back to client.
Jeremy.
(This used to be commit e6b27f3d8069ae304baaebe09341c58d46b05fe4)
2002-01-04 21:11:35 +00:00
Jeremy Allison
41dd759a50 Ensure modtime is set correctly on destination files in copy command.
Jeremy.
(This used to be commit fb1ab02553e01df0464f0df3eea7ae6a66b4104b)
2002-01-03 20:49:06 +00:00
Simo Sorce
4fd97a7a03 passing NULL to print_queue_status()'s status parameter could end in a segfault
(This used to be commit 79254d2b0490ba400832ef6d460895d45cc4273f)
2001-12-29 09:52:24 +00:00
Jeremy Allison
0fd94a5c4b Ensured filetimes set (by name) after close. Ignore errors. This is the
correct way to ensure times set in 'pending modtime' and 'time close'
are always set correctly. Inspired by patch from Juergen Hasch.
Jeremy.
(This used to be commit 24053858543fa6c22c0c3222570109fbfdabab9e)
2001-12-16 21:04:19 +00:00
Jeremy Allison
a8982ca90c I think this is a fix for the "out of space" errors with oplocks=no.
Jeremy.
(This used to be commit 84b62d3c8ebd78cd578ac36168631b3bbcafdd8c)
2001-11-25 02:23:22 +00:00
Jeremy Allison
02eda2e251 Tidyups when I was doing the big merge...
Jeremy.
(This used to be commit 9148bb9eaa67de60c3b0b4709a9c05a840c20c66)
2001-11-17 03:19:17 +00:00
Jeremy Allison
1b579da9dd Fix from Herb. mincount/maxcount need to be ssize_t for comparisons.
Jeremy.
(This used to be commit 60983782ed078593d122e0c0bc6b4e17c3e56e63)
2001-11-14 02:35:56 +00:00
Jeremy Allison
67f5bea484 Fixup __LPID -> _LPID.
Jeremy.
(This used to be commit ab607cdf153d9187fe50af3377ece5a9fafde1b1)
2001-11-09 20:34:12 +00:00
Andrew Bartlett
55dfb66079 Change to guest logon code.
This changes the way we process guest logons - we now treat them as normal
logons, but set the 'guest' flag.  In particular this is needed becouse Win2k
will do an NTLMSSP login with username "", therefore missing our previous guest
connection code - this is getting a pain to do as a special case all over the
shop.

Tridge:  We don't seem to be setting a guest bit for NTLMSSP, in either the
anonymous or authenticated case, can you take a look at this?

Also some cleanups in the check_password() code that should make some of the
debugs clearer.

Various other minor cleanups:

 - change the session code to just take a vuser, rather than having to do a
   vuid lookup on vuser.vuid

 - Change some of the global_client_caps linking

 - Better debug in authorise_login(): show the vuid.

Andrew Bartlett
(This used to be commit 62f4e4bd0aef9ade653b3f8d575d2864c166ab4d)
2001-11-08 22:19:01 +00:00
Tim Potter
d876260d88 Don't put a \n on the end of the arg to exit_server()
(This used to be commit dfb8566220c3e90ca2b757ea124f53aed103269e)
2001-11-05 00:02:38 +00:00
Andrew Bartlett
acb81fe408 Various post AuthRewrite cleanups, fixups and tidyups.
Zero out some of the plaintext passwords for paranoia

Fix up some of the other passdb backends with the change to *uid_t rather than
uid_t.

Make some of the code in srv_netlog_nt.c clearer, is passing an array around,
so pass its lenght in is definition, not as a seperate paramater.

Use sizeof() rather than magic numbers, it makes things easier to read.

Cope with a PAM authenticated user who is not in /etc/passwd - currently by
saying NO_SUCH_USER, but this can change in future.

Andrew Bartlett
(This used to be commit 514c91b16baca639bb04638042bf9894d881172a)
2001-11-01 05:02:41 +00:00
Andrew Bartlett
bdca4e32aa When you make a data_blob() then you probably need to free it too...
(This used to be commit 531e24973227ca4f1ae65ffb2454aedd5871de96)
2001-10-31 12:28:40 +00:00
Andrew Bartlett
60f0627afb This is a farily large patch (3300 lines) and reworks most of the AuthRewrite
code.

In particular this assists tpot in some of his work, becouse it provides the
connection between the authenticaion and the vuid generation.

Major Changes:
	- Fully malloc'ed structures.
	  - Massive rework of the code so that all structures are made and destroyed
	    using malloc and free, rather than hanging around on the stack.
	- SAM_ACCOUNT unix uids and gids are now pointers to the same, to allow them
	   to be declared 'invalid' without the chance that people might get ROOT by
	   default.

	- kill off some of the "DOMAIN\user" lookups.  These can be readded at a more
	  appropriate place (probably domain_client_validate.c) in the future. They
	  don't belong in session setups.

	- Massive introduction of DATA_BLOB structures, particularly for passwords.

	- Use NTLMSSP flags to tell the backend what its getting, rather than magic
	  lenghths.

	- Fix winbind back up again, but tpot is redoing this soon anyway.

	- Abstract much of the work in srv_netlog_nt back into auth helper functions.

This is a LARGE change, and any assistance is testing it is appriciated.

Domain logons are still broken (as far as I can tell) but other functionality
seems
intact.

Needs testing with a wide variety of MS clients.

Andrew Bartlett
(This used to be commit f70fb819b2f57bd57232b51808345e2319d52f6c)
2001-10-31 10:46:25 +00:00
Simo Sorce
a972d2c448 another few changes to the new mangle code
(This used to be commit 92f953c156a39b54230c52c6102a319a4a5ca798)
2001-10-29 13:21:29 +00:00
Tim Potter
7cd889f566 Converted a bunch of 0x85 constants to SMBkeepalive.
(This used to be commit b16a15a13ed7d267c6366abaeeb3ccafa5776f5e)
2001-10-20 23:34:40 +00:00
Jeremy Allison
6cc3953196 Restored old Bmpx code - actually used by OS/2.
Jeremy.
(This used to be commit 7c1688fd67c1bda1477aaf870371c825280db870)
2001-10-19 00:56:03 +00:00
Andrew Tridgell
0c0dd06dbd split session setup code out of reply.c in preparation for adding
NTLMSSP and kerberos support in smbd
(This used to be commit 38a43d75e25bbebe0f6cdfcf389129a842ede842)
2001-10-15 07:50:21 +00:00
Tim Potter
dc1fc3ee8e Removed 'extern int DEBUGLEVEL' as it is now in the smb.h header.
(This used to be commit 2d0922b0eabfdc0aaf1d0797482fef47ed7fde8e)
2001-10-02 04:29:50 +00:00
Andrew Bartlett
41821943da Kill of the reply.c end of the workstaion trust account mess.
Fix the NT errror codes, this time in line with WinXP/2k.
 - Return the normal error codes, expect for bad user/bad password.  These map
   to logon failure, as a quick security hack.  We follow suit.

Simplfy some of the password extraction code, the auth subsytem has the
 intelegence to sort this stuff out, no need to do it here.

Move to 'global_encrypted_passwords_negotiated' to determine the use of
unencrypted hacks, replacing the current mess.

Andrew Bartlett
(This used to be commit c04f063573c61d8ef3f43815bbb9b6b076dc23eb)
2001-09-26 13:55:59 +00:00
Andrew Bartlett
7cb54b29dc Lets call an NTSTATUS an nt_status, not an ecode.
(This used to be commit b6048e28ab996ba5581cfa3b50401c0f775befdd)
2001-09-23 23:07:53 +00:00
Andrew Bartlett
5993238b0e Zero out these pstrings before we start: makes for much easier debugging.
(This used to be commit d417b6b5cbdbb244cc683387d73a9200eef53427)
2001-09-23 22:51:27 +00:00
Andrew Bartlett
4eb7ef6b61 Fix up NT_STATUS return for session setups, Win2k objects to anything other
than NT_STATUS_LOGON_FAILURE.  This also brings us (almost) back in line with
their implementation.

Kill off SMBENCRYPT() macro

Kill off 'nt smb support' paramater - tridge okayed this one.

Andrew Bartlett
(This used to be commit 67947bf6e31ee9758f8a2186f83031ba21b716f2)
2001-09-23 05:16:03 +00:00
Andrew Tridgell
b49a1f01b0 fixed the error code handling in can_delete() by converting it to
NTSTATUS. This gets the right error codes in SMBunlink
(This used to be commit c82f7828c05c747a5782d10c68cc2df80d4071bd)
2001-09-21 14:27:43 +00:00
Simo Sorce
61b2794968 move to SAFE_FREE()
(This used to be commit a95943fde0ad89ae3f2deca2f7ba9cb5ab612b74)
2001-09-17 11:25:41 +00:00
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