1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-21 01:59:07 +03:00

1074 Commits

Author SHA1 Message Date
Tim Potter
90a7d7d3d7 Compile fix for new arg to create_nt_token()
(This used to be commit 806185ca8cc8d28f16745a1db9427f52eb8d22e4)
2000-12-12 05:29:47 +00:00
Jeremy Allison
276364e2a4 Removed the special casing of SIDs in se_access_check. This is now done (correctly)
when the NT_USER_TOKEN is *created*.
Jeremy.
(This used to be commit 27d72ed1cf8ece2bede812341279ba5a7262ace4)
2000-12-12 02:36:14 +00:00
Jeremy Allison
4c639caa1f Sorry Gerald, I think the original code was better (plus safer as I'm sure
it's working :-).
Jeremy.
(This used to be commit e18c104ee35d00dcbe2e73e6c9699300a3947364)
2000-12-12 00:11:34 +00:00
Jeremy Allison
71acf4cd1f Extra part of fix that Gerald missed (sorry).
Jeremy.
(This used to be commit ebf754400f443452948020d68e29f597f1b2d60c)
2000-12-12 00:05:02 +00:00
Gerald Carter
93e98d0281 subtle bug where files which missed the stat_cache but were added
to the cache during the look returned a blank stat struct.  Made
weird occurrences such as...

   $ smbclient //pogo/print$
   smb:\ > cd w32x86
     ERROR: Invalid path
   smb:\ > cd w32x86

   smb:\w32x86\ >
(This used to be commit 8938dc183112b039c21a5a0beadb60068a8c5b00)
2000-12-11 22:51:57 +00:00
Jeremy Allison
60337746ea Fix for short names not being returned correctly with non-mangled shares.
Jeremy.
(This used to be commit bcf0a5c316ee8cf333d9d838b041e44a11cb5f1b)
2000-12-11 22:31:25 +00:00
Jeremy Allison
ccb5cbf175 Fixed very subtle bug returning correct error on an open, when we have
a choice of invalid share mode and access denied. We must return the
access denied by preference, but also remember to break the oplocks...
This is needed for multi-user MS-Access.
Jeremy.
(This used to be commit 7eb7241442ea0f1e065b009c3cccd5821b89a8b6)
2000-12-11 21:09:48 +00:00
Jeremy Allison
f3a0da8c0e Fixed compiler warning.
Jeremy.
(This used to be commit e6a1a1e444631f0d674f33b5b8d1d71435de0511)
2000-12-08 19:59:22 +00:00
Jeremy Allison
316cfee01c Added OLD_NTDOMAIN to remove warnings about undefined functions.
Jeremy.
(This used to be commit f4c32a75e6e60eae6078449478d04ff22373d817)
2000-12-08 19:35:58 +00:00
Jeremy Allison
0f1ead1c93 Removed unused auto (IRIX compiler warning).
Jeremy.
(This used to be commit 63e2ebc4272cd8bc52ea80e1e12996ab273b8ea4)
2000-12-08 19:21:09 +00:00
Jeremy Allison
269acfe1d2 Fixed *very* subtle statcache bug where invalid stat state could be
being used if last component lookup failed, but was found in the directory
scan.
Jeremy.
(This used to be commit 7055fa0bc43f6e2b3f04b8901fccea80d59bf490)
2000-12-08 00:39:32 +00:00
Jeremy Allison
be7e02f9bc Fixed bug with Win9x/ME where drivername was being returned incorrectly in
one printq case. Now goes though common function.
Jeremy.
(This used to be commit e9f48c9cec960b6190fb7a2485c9476640863071)
2000-12-07 21:55:10 +00:00
Jeremy Allison
cf5b71994d file_lines_load/file_lines_pload can now optionally convert unix_to_dos()
on read.
Jeremy.
(This used to be commit 76b8dd376d13eb4469417be217c966d54d333367)
2000-12-07 19:26:04 +00:00
Jeremy Allison
423227d7ca Working code to read POSIX ACLs on a Linux system using the bestbits
ACL patch from http://acl.bestbits.at/.
configure support needs more work (just assumes correct headers at
the moment). ACL writing needs adding.
Jeremy.
(This used to be commit 6ae63e502e6adf3666a34aa87860c74e106fdb84)
2000-12-07 05:38:01 +00:00
Jeremy Allison
70922b9bbe Cause smbd to use the new posix_acls code, not the old unix_acls code.
Currently does exactly the same thing (returns ACLs the same way). This
code is written to try and get a POSIX ACL via the abstract sys_XX interface,
then fall back to providing a UNIX based ACL if the calls fail. Seems to
work. Next step is to add a --with-posix-acls to configure.in and then
check on a POSIX ACL system that a complex ACL is returned correctly
as an NT ACL. Note that the ACL set (a more complex problem) is not
addressed yet.
Jeremy.
(This used to be commit 4339e20202a876dbadc07980b731f711463b7299)
2000-12-06 23:24:31 +00:00
Tim Potter
a1f4e6e927 Print debug if domain_client_validate() cannot fetch the trust account
password (say for example if the tdb file format has changed).  (-:
(This used to be commit 447fbb38a857a7e97cf2a99022576521c71a4512)
2000-12-06 03:22:44 +00:00
Jeremy Allison
0293259eaa Make smbd/posix_acls.c use abstract interface.
include/smb_acls.h lib/sysacls.c: Added as interface definitions.
Jeremy.
(This used to be commit 8359375bba5b3ae24956f66b066dedf11d3583df)
2000-12-06 02:32:48 +00:00
Tim Potter
1f6fc3988d Fixed compiler warning.
(This used to be commit 5e81151e53300a8c58adca09d02d0b075a13c322)
2000-12-06 01:47:06 +00:00
Jeremy Allison
b881a55dfd Moving to abstract API interface (sys_get_acl() etc.) to allow system
specific ACL calls to be dealt with elsewhere. This file will eventually
be able to replace the old UNIX acl interface.
Jeremy.
(This used to be commit b27cac77628a4b332b529115b0854c71f9eea374)
2000-12-06 01:34:16 +00:00
David O'Neill
7e9736703c Remove C++ style comments
(This used to be commit 80c192244fdb07e8e9cf4c0376bbea60dde244a0)
2000-12-04 17:16:44 +00:00
Jeremy Allison
36390f7293 Code to read & return POSIX ACLs as NT ACLs. Close to test on Linux.
Jeremy.
(This used to be commit 52e9311bc2a837d1f4791f36c3477c430f841378)
2000-12-01 00:32:25 +00:00
Jeremy Allison
8c0a28802a Keep syncing up POSIX ACL work...
Jeremy.
(This used to be commit 8f0062b873b2f4e8b27bb937ad213c4aa29443a7)
2000-11-30 19:31:04 +00:00
Jeremy Allison
94558441aa Work in progress, doesn't compile. Adding the POSIX ACL mapping....
Jeremy.
(This used to be commit bcac4ede7608a91643f5fcd034f6b273a45b5c7a)
2000-11-30 01:00:36 +00:00
Jeremy Allison
366bf693d2 include/dlinklist.h: Added '{' '}' around DLIST_PROMOTE so it can be used as a single
statement after an 'if'. Tracking this down took 4 hours from my life and ANDREW I WANT
THEM BACK !!!!! :-).
include/smb.h smbd/password.c: Fixed the bug veritas reported with realloc of the validated_users
array growing without bounds. This is now a linked list as god (Andrew) intended :-).
Jeremy.
(This used to be commit 346f2f9206b9b4ed123e2a61c0a48de630397b8a)
2000-11-28 22:17:44 +00:00
Jeremy Allison
0f1c800f85 passdb/secrets.c passdb/smbpassfile.c smbd/server.c : Actually *use* the code
written to transition from an old DOMAIN.MACHINE.MAC file to secrets.tdb.
printing/nt_printing.c: Fix case insensitive name lookups for driver files.
John - this should fix the Win9x/WinME problem correctly.
Jeremy.
(This used to be commit 8f3332a9acf413ac5d12053ca5c52733a4e946cc)
2000-11-27 23:59:42 +00:00
Jeremy Allison
120f3afa89 Fixed messaging so main smbd can get lib/message.c messages.
Jeremy.
(This used to be commit 349d58fb5758cebc5a8575f80103150b8cd0a080)
2000-11-27 21:37:07 +00:00
Jeremy Allison
a1c3f33d94 Removed unnessesary init.
Jeremy.
(This used to be commit 2a797f9aa26b2d0c703b9d67f6e1ec97e4f408d2)
2000-11-27 19:14:10 +00:00
Jeremy Allison
efb7bb3bcf This should fix Office failing to print to "FILE:".
Jeremy.
(This used to be commit a08b08f7782234f26b2656a229007a411c6fb521)
2000-11-24 19:53:38 +00:00
Jeremy Allison
b935b968ec Free talloc'ed memory from the main smbd. Patch from Rich Bollinger, Elliott Company
Jeremy.
(This used to be commit e041b144b2c7c6c9fdd6cd20256a197876aaf353)
2000-11-22 19:42:54 +00:00
Jeremy Allison
7254a66e00 Don't forget to convert into UNIX character set before calling
winbindd.
Jeremy.
(This used to be commit 00cd72c385f1e5d075dbacf834b68769b5ac38f3)
2000-11-21 22:37:03 +00:00
Gerald Carter
14067f9c9c combined 2 if statments which used the same condition
-- jerry
(This used to be commit 445fd1dbd8bb93f56f20b5dd9e9d5b018147b21d)
2000-11-21 06:05:08 +00:00
Jeremy Allison
2130ced345 Fix for off-by-one StrnCpy.
Jeremy.
(This used to be commit 63cafb34b39443d03d17ae01b47adc0926b05fe2)
2000-11-21 02:38:22 +00:00
Jeremy Allison
2bd3a436fd Fix for updating of print queues changed from a local box. Essentially,
this makes sure that the change messages sent to ourselves are handled
synchronously w.r.t. other smb packets incoming.
Jeremy.
(This used to be commit 78a13074455618308d048d1c69f62e660988eb90)
2000-11-21 00:30:15 +00:00
Andrew Tridgell
5f8ff6056a we don't need the separate lp_status() connection records any more
(This used to be commit 209e20365e562371aafafea301b4ffecc3d4c3ed)
2000-11-17 03:31:03 +00:00
Andrew Tridgell
0de5569304 fixed the problem with messages not getting through
the problem had nothing to do with being your own pid, it was instead
a problem with IPC$ connections not being registered in the
connections database and an incorrect test for -1 in the messaging
code.

These changes also mean that IPC$ shares now show up in
smbstatus. That is probably a good thing.
(This used to be commit 3575ad10985a18f897e38179ca69fa9a49a7ea02)
2000-11-17 03:15:18 +00:00
Jeremy Allison
9df3d64a2c Fix from Jim McDonough @ IBM for OS/2 clients.
Jeremy.
(This used to be commit f571e1efd01c7b1b500a833df3bd074a8c4c65ec)
2000-11-16 19:08:55 +00:00
Jeremy Allison
6f58dd5871 Ok - fixed a bug in our levelII oplock code. We need to break a level II on
a byte range lock (write lock only, but Win2k breaks on read lock also so I
do the same) - if you think about why, this is obvious. Also fixed our client
code to do level II oplocks, if requested, and fixed the code where we would
assume the client wanted level II if it advertised itself as being level II
capable - it may not want that.
Jeremy.
(This used to be commit 213cd0b5192307cd4b0026cae94b2f52fb1b0c02)
2000-11-16 00:59:18 +00:00
Jeremy Allison
4bce271e4f Merge from appliance head of JR's changes for driver versioning.
Jeremy.
(This used to be commit cdbd2e99775642dc2e92004be9014bf38a92d80f)
2000-11-14 21:56:32 +00:00
Gerald Carter
9fede0dc0d Large commit which restructures the local password storage API.
Currently the only backend which works is smbpasswd (tdb, LDAP, and NIS+)
are broken, but they were somewhat broken before. :)

The following functions implement the storage manipulation interface

/*The following definitions come from  passdb/pdb_smbpasswd.c  */

BOOL pdb_setsampwent (BOOL update);
void pdb_endsampwent (void);
SAM_ACCOUNT* pdb_getsampwent (void);
SAM_ACCOUNT* pdb_getsampwnam (char *username);
SAM_ACCOUNT* pdb_getsampwuid (uid_t uid);
SAM_ACCOUNT* pdb_getsampwrid (uint32 rid);
BOOL pdb_add_sam_account (SAM_ACCOUNT *sampass);
BOOL pdb_update_sam_account (SAM_ACCOUNT *sampass, BOOL override);
BOOL pdb_delete_sam_account (char* username);

There is also a host of pdb_set..() and pdb_get..() functions for
manipulating SAM_ACCOUNT struct members.  Note that the struct
passdb_ops {} has gone away.  Also notice that struct smb_passwd
(formally in smb.h) has been moved to passdb/pdb_smbpasswd.c
and is not accessed outisde of static internal functions in this
file.  All local password searches should make use of the the SAM_ACCOUNT
struct and the previously mentioned functions.

I'll write some documentation for this later.  The next step is to fix
the TDB passdb backend, then work on spliting the backends out into
share libraries, and finally get the LDAP backend going.

What works and may not:

	o domain logons from Win9x 	works
	o domain logons from WinNT 4	works
	o user and group enumeration
		as implemented by Tim	works
	o file and print access		works
	o changing password from
		Win9x & NT		ummm...i'll fix this tonight :)

If I broke anything else, just yell and I'll fix it.  I think it
should be fairly quite.





-- jerry
(This used to be commit 0b92d0838ebdbe24f34f17e313ecbf61a0301389)
2000-11-13 23:03:34 +00:00
Tim Potter
e1cc6c85d7 More merging of printing stuff from appliance.
(This used to be commit 18fa724a7969666dd5aa176af187054abc94bfd3)
2000-11-08 00:16:38 +00:00
Jeremy Allison
6d36edaf43 Added a VFS version return to init call. Allows smbd to fail an init if
versions don't match.
Jeremy.
(This used to be commit d0fbb4f5d999abade8930cc6fff231a2af6cccfb)
2000-11-06 21:44:33 +00:00
Jeremy Allison
5073d11643 Fix for admin user being ignored.
Jeremy.
(This used to be commit f0dcc39d34202ed67d778ff40166856d4c2ad87b)
2000-11-04 06:45:26 +00:00
Jeremy Allison
ff6f0c1a3b Call standard_sub_advanced() after lp_logon_XX() calls.
Jeremy.
(This used to be commit d5be2334d4fb007e39565b771cbe68e338a7fe68)
2000-10-30 19:35:43 +00:00
Jeremy Allison
1cb444057a David Lee's utmp patch (finally). Thanks David !
Jeremy.
(This used to be commit b809a2d0c81c54e917ccc0c99b3e70ea8d7ceab1)
2000-10-28 19:38:39 +00:00
Jeremy Allison
b5ac72cc64 Sorry JF - no billable hours :-). I fixed the "stream of events" problem
with PCL drivers. The problem was we were updating the changeid on every
SETPRINTERDATA/DELETEPRINTERDATA call. We should not do this, we should
just update the 'setprinter' called count. We update the changeid on calls
to SETPRINTER/ADDPRINTER/ADDPRINTEREX etc. Also fixed the correct returning
of the create time on printers.
Jeremy.
(This used to be commit 521f09829fd329f87b3d19e8871e2b989c98a58e)
2000-10-26 21:43:13 +00:00
Jeremy Allison
bbce6b44eb Fix for vfs_fstat() crash with new stat code.
Jeremy.
(This used to be commit 979aa01e011d433328af0ead7644f47d0cfadf13)
2000-10-20 23:59:47 +00:00
Jeremy Allison
abf055046f Ok - this is a big patch - and it may break smbd a bit (although
I hope not). If you encounter strange file-serving behavior after this
patch then back it out. I analysed our stat() usage and realised we
were doing approx. 3 stat calls per open, and 2 per getattr/setattr.
This patch should fix all that. It causes the stat struct returned
from unix_convert() (which now *must* be passed a valid SMB_STRUCT_STAT
pointer) to be passed through into the open code. This should prevent
the multiple stats that were being done so as not to violate layer
encapsulation in the API's.

Herb - if you could run a NetBench test with this code and do a
padc/par syscall test and also run with the current 2.2.0 code
and test the padc/par syscalls I'd appreciate it - you should
find the number of stat calls reduced - not sure by how much.

The patch depends on unix_convert() actually finding the file
and returning a stat struct, or returning a zero'd out stat
struct if the file didn't exist. I believe we can guarentee this
to be the case - I just wasn't confident enough to make this
an assertion before.

Ok ok - I did write this whilst at the Miami conference.....
sometimes you get a little free time at these things :-).

Jeremy.
(This used to be commit 66a5c05ec46b641224fbe01b30bd7e83571a2a1b)
2000-10-19 02:58:24 +00:00
Tim Potter
ecd90a0bf4 Renamed WPrintQueuePurge to WPrintQueueCtrl as this function can purge, pause
or resume a print queue.
(This used to be commit 9998518a69c67c1540266549c69fca977a89acde)
2000-10-18 06:22:20 +00:00
Jeremy Allison
330d678fba Fix to allow smbd to call winbindd if it is running for all group enumeration,
falling back to the UNIX calls on error. This should fix all problems with
smbd enumerating all users in all groups in all trusted domains via winbindd.
Also changed GETDC to query 1C name rather than 1b name as only the PDC
registers 1b.
Jeremy.
(This used to be commit 5b0038a2afd8abbd6fd4a58f5477a40d1926d498)
2000-10-13 01:59:14 +00:00
Jeremy Allison
c56301b1d1 Ignore SIGUSR2. Terminate nmbd if we have no interfaces.
Jeremy.
(This used to be commit 580e2e044cfd1d011d9f28f0f49ef60ca6ba8d32)
2000-10-12 21:19:49 +00:00