Tim Potter [Mon, 3 Jul 2000 06:52:31 +0000 (06:52 +0000)]
Some more sec_ctx changes. Modified some fields in the pipe_struct
structure so authenticated pipe users can have their unix groups set when
become_authenticated_pipe_user() is called.
(This used to be commit
55c9bf124dc661df43bfe582ef14b1297aeaf0fa)
Gerald Carter [Mon, 3 Jul 2000 04:29:17 +0000 (04:29 +0000)]
first pass at merging rpcclient from TNG to HEAD. You can get a
semi-connection and a rpcclient prompt, but no functionality there yet.
Will be a few more days on that.
I need to clean this up a little. Will work on that some more.
--jerry
(This used to be commit
1b305cb3421eef575cc19bacf1fcc57537d7ea75)
Gerald Carter [Mon, 3 Jul 2000 04:28:29 +0000 (04:28 +0000)]
first pass at merging rpcclient from TNG to HEAD. You can get a
semi-connection and a rpcclient prompt, but no functionality there yet.
Will be a few more days on that.
--jerry
(This used to be commit
269051aa0c52728278a1d290148564f11cf7f189)
Gerald Carter [Mon, 3 Jul 2000 04:26:37 +0000 (04:26 +0000)]
first pass at merging rpcclient from TNG to HEAD. You can get a
semi-connection and a rpcclient prompt, but no functionality there yet.
Will be a few more days on that.
The changes to the header files were minor. A few struct's and a few
additional fields to existing ones. No deletions. **minimal change
necessary** :-) Well, maybe not minimal, but I tried.
All other programs compile, link and run ok from what I can tell so
I don;t think I broke anything.
--jerry
(This used to be commit
cd7f0b0b91afd3331c0607ba2fcb3ccdd41ecebf)
Gerald Carter [Mon, 3 Jul 2000 04:24:31 +0000 (04:24 +0000)]
first pass at merging rpcclient from TNG to HEAD. You can get a
semi-connection and a rpcclient prompt, but no functionality there yet.
Will be a few more days on that.
These files changed only with the addition of some support functions
from TNG
--jerry
(This used to be commit
a04ea15f723e559db3c60bed03318cc7be851f69)
Tim Potter [Mon, 3 Jul 2000 00:58:13 +0000 (00:58 +0000)]
Renamed generic_request() to winbindd_request()
(This used to be commit
d9041958558fc8e3c7b0491eb0f7e45bee9d19c5)
Tim Potter [Mon, 3 Jul 2000 00:57:15 +0000 (00:57 +0000)]
Re-ran autoconf
(This used to be commit
2003c11c3e1635fec4702f5a704b5ce9b0bc3f64)
Jean-François Micouleau [Sat, 1 Jul 2000 16:40:10 +0000 (16:40 +0000)]
reverting Jeremy's changes to enumprinterdata.
Jeremy, the out_max_value_len and out_max_data_len were good. Your change
is breaking NT4SP6 checked version.
J.F.
(This used to be commit
5f2be8ba7dcd1eacc169e8d1d53c309e45a5cce6)
Jean-François Micouleau [Sat, 1 Jul 2000 09:34:37 +0000 (09:34 +0000)]
Found that the minimum priority is 1 and not 0 on NT.
Changed back the devicemode's devicename to "\\server\printer".
I'm 100% sure it is correct, it's what NT sends on the wire. And that's
the printer's name and NOT the port's name as it has to be unique. It must
also be a UNC because it's a remote printer (remote for the client).
J.F.
(This used to be commit
a7098c47b6ecbd7bb5df1330ea176aa4d463aad3)
Jeremy Allison [Sat, 1 Jul 2000 05:44:49 +0000 (05:44 +0000)]
Removed unneccessary ()'s afer &'s that made it look like we
don't know how the C language works :-).
Jeremy
(This used to be commit
d47329649d4f92a52acac7de256d9d9b0afc33c8)
Tim Potter [Fri, 30 Jun 2000 06:48:47 +0000 (06:48 +0000)]
Merge from TNG.
(This used to be commit
b46fc0ed040ff24bb4e348904fdb0e9788364837)
Tim Potter [Fri, 30 Jun 2000 06:18:42 +0000 (06:18 +0000)]
Added more args to smbclient wrapper - there's probably a better way
to do this.
(This used to be commit
8de200ecbcc3b5b257354a8f51ebefad4cabdb73)
Tim Potter [Fri, 30 Jun 2000 06:10:36 +0000 (06:10 +0000)]
Updated documentation for wbinfo and winbindd.
(This used to be commit
8b814d1bb188f7d657fca6014d0b50d2bbc1ab1b)
Jeremy Allison [Fri, 30 Jun 2000 01:07:26 +0000 (01:07 +0000)]
Fixed oops with missing MANGLE_PATH directive.
Jeremy.
(This used to be commit
fb6b5a964512dec37f85f8de39c0c06f702aabbd)
Andrew Tridgell [Thu, 29 Jun 2000 08:23:56 +0000 (08:23 +0000)]
simpler configure test
(This used to be commit
7752c14c313bf9b565828181647fb71457167d92)
Andrew Tridgell [Thu, 29 Jun 2000 08:22:00 +0000 (08:22 +0000)]
slightly saner defaults
(This used to be commit
fae3acc574c6e78121e6a1d464b67a15fb025304)
Jeremy Allison [Thu, 29 Jun 2000 00:52:40 +0000 (00:52 +0000)]
Tidy up current spool code - added some JRATEST ifdefs to allow
experimentation with what is making spoolss.exe crash - may be removed
later.
Jeremy.
(This used to be commit
f3fe384dc39ce49c639a7adf35179a50cb86abf0)
Jeremy Allison [Wed, 28 Jun 2000 16:52:59 +0000 (16:52 +0000)]
Removed extra uint32 field in auto-notify reply. This fixes some spoolss.exe
crashes but there are still more to work on.
Jeremy.
(This used to be commit
aa49dc037fa4e7b00d1a33619da5450a4eda1b9e)
Jeremy Allison [Mon, 26 Jun 2000 22:08:20 +0000 (22:08 +0000)]
Changing drivers using the properties page works - but only if getting/setting
security descriptors is disabled (as it is in this code).
If get/set sd's is enabled spooler.exe crashes on NT.
I'll investigate and fix that issue next.
Jeremy.
(This used to be commit
8c9ed874363e6a710bc0fe521bb8c4f7ee219587)
Jeremy Allison [Mon, 26 Jun 2000 17:41:06 +0000 (17:41 +0000)]
Fixed display of "Everyone" in SD's.
Jeremy.
(This used to be commit
3c7fdaa576c09dab2e4de78ed353b1fa1d65a40d)
Andrew Tridgell [Mon, 26 Jun 2000 08:18:42 +0000 (08:18 +0000)]
fixed size alignment in talloc
(This used to be commit
064cdb7ee69bff3af12d1e0b3c3b59207c594681)
Jeremy Allison [Sat, 24 Jun 2000 00:15:08 +0000 (00:15 +0000)]
lib/util_sid.c: Uninitialized memory read.
rpc_parse/parse_spoolss.c: Added note about prs_align when marshalling a SEC_DESC...
rpc_server/srv_lsa.c: Tim - your changes broke the display of the 'everyone' group
when doing file access with no winbindd running. This is a partial
fix - more when I have analysed this more.
rpc_server/srv_spoolss_nt.c: Fix for the 'change driver' problem ! Hurrah !
Jeremy.
(This used to be commit
151b131ee01ef916c072bcdaa9943a2e984a0f45)
Jeremy Allison [Fri, 23 Jun 2000 19:57:42 +0000 (19:57 +0000)]
Fix a malloc of zero problem.
Jeremy.
(This used to be commit
2aa21db960666736331b18956422b7c13aad0f0f)
Jeremy Allison [Fri, 23 Jun 2000 17:31:38 +0000 (17:31 +0000)]
lib/util_unistr.c: Off-by-one fix for dos_PutUniStr from John Reilly jreilly@hp.com.
Memory leak fix for new sec_ctx code (sorry Tim :-).
Jeremy.
(This used to be commit
edaf49c66d5a5ccf6689b358c301e208599a468f)
Tim Potter [Fri, 23 Jun 2000 07:02:59 +0000 (07:02 +0000)]
Don't return a value for a void function.
(This used to be commit
66fd7da08ffbb3673925e8816f06f8983363036b)
Tim Potter [Fri, 23 Jun 2000 07:00:43 +0000 (07:00 +0000)]
Test harness stuff for compiling things.
(This used to be commit
0af2a1ea69fcdf21243fc7e9a9de8914817d4880)
Tim Potter [Fri, 23 Jun 2000 06:53:33 +0000 (06:53 +0000)]
Tim Potter [Fri, 23 Jun 2000 06:47:11 +0000 (06:47 +0000)]
Some compile fixes.
(This used to be commit
4d0c09cb4f17b60ab99767d3e61f2ad50c6c5c30)
Tim Potter [Fri, 23 Jun 2000 06:43:08 +0000 (06:43 +0000)]
Got a bit carried away deleting things.
(This used to be commit
211391d88e10d94edcc81b83fefcadb4a905ea56)
Tim Potter [Fri, 23 Jun 2000 06:36:22 +0000 (06:36 +0000)]
Removed unused variables.
(This used to be commit
a75e738211e744adb966bcbc24371554c9642220)
Tim Potter [Fri, 23 Jun 2000 06:31:45 +0000 (06:31 +0000)]
Added parenthesis around definition of PRINTER_ACE_PRINT.
(This used to be commit
0dbc680e34922557a7b4ad62e898002218fa94b3)
Tim Potter [Fri, 23 Jun 2000 06:27:05 +0000 (06:27 +0000)]
Added return for become_authenticated_pipe_user() function.
(This used to be commit
d0f55e04c9400481e4a981431715e167a8246e45)
Tim Potter [Fri, 23 Jun 2000 06:21:08 +0000 (06:21 +0000)]
Tests for new security context stuff.
(This used to be commit
85a68bc449a071d21e03ad4f54c1e784831a9bb5)
Tim Potter [Fri, 23 Jun 2000 06:20:03 +0000 (06:20 +0000)]
Tim Potter [Fri, 23 Jun 2000 06:19:26 +0000 (06:19 +0000)]
Added MAX_SEC_CTX_DEPTH
(This used to be commit
2bf21395ba4999d0392d6f54093ddc8861323ddd)
Tim Potter [Fri, 23 Jun 2000 05:57:48 +0000 (05:57 +0000)]
Delete OriginalDir stuff.
(This used to be commit
3d0f1845c8cefccfabcfd35694264c1e5f52c3af)
Tim Potter [Fri, 23 Jun 2000 05:57:20 +0000 (05:57 +0000)]
Moved some static functions to sec_ctx.c
Implemented become_root() and friends in terms of push/pop/set security
contexts.
(This used to be commit
0bcdcd0606fc2b6aba35b03255aad5bb2bd8e848)
Tim Potter [Fri, 23 Jun 2000 05:55:41 +0000 (05:55 +0000)]
Added smbd/sec_ctx.o to smbd objects.
(This used to be commit
11897939bcc073a24ff25c915beec7418a0bccfd)
Tim Potter [Fri, 23 Jun 2000 05:54:49 +0000 (05:54 +0000)]
Call init_sec_ctx() instead of init_uid().
Delete OriginalDir stuff.
(This used to be commit
db5e6ad3a69a6fd744d8a22066587908470e3815)
Tim Potter [Fri, 23 Jun 2000 05:53:18 +0000 (05:53 +0000)]
Removed save directory argument to become_root() calls. Probably most of
this stuff doesn't need to be done as root anyway.
(This used to be commit
c3cad0ff6482784f95fd54ba51ee5be2354bb95d)
Tim Potter [Fri, 23 Jun 2000 05:49:11 +0000 (05:49 +0000)]
I've been working on refactoring some of the mess that is the become_user()
code. This code is now implemented as a stack of security contexts, where
a security context is defined as a set of effective user, group and
supplementary group ids.
The following functions are implemented:
BOOL push_sec_ctx(void);
Create a new security context on the stack which is the same as the
current security context.
void set_sec_ctx(uid_t uid, gid_t gid, int ngroups, gid_t *groups);
Set the current security context to a given set of user and group
ids.
void set_root_sec_ctx(void);
Set to uid = gid = 0. No supplementary groups are set.
BOOL pop_sec_ctx(void);
Pop a security context from the stack and restore the user and group
permissions of the previous context.
void init_sec_ctx(void);
Initialise the security context stack. This must be called before any
of the other operations are used or weird things may happen.
The idea is that there is a base security context which is either root or
some authenticated unix user. Other security contexts can be pushed and
popped as needed for things like changing passwords, or rpc pipe operations
where the rpc pipe user is different from the smb user.
(This used to be commit
87c78d6d5a6bf8d0907d6f8ef5ee0d642946cad3)
Gerald Carter [Fri, 23 Jun 2000 00:09:21 +0000 (00:09 +0000)]
just enough to get rpcclient to compile. Look for #if 0
blocks around a few unimplemented functions. Also had to
add cli_reg.c to Makefile.in
--jerry
(This used to be commit
426c43fb5167b042682c22e67871e5ebadb4b769)
Jeremy Allison [Thu, 22 Jun 2000 23:59:22 +0000 (23:59 +0000)]
Changed enumports to show printernames as ports. In line with 'the grand plan' :-)
Gerald & I discussed with HP. More changes to follow.
Jeremy.
(This used to be commit
193a248beda99103c73a0b0ea5e2fbcbb516ce8e)
Jeremy Allison [Thu, 22 Jun 2000 01:39:17 +0000 (01:39 +0000)]
lib/util_unistr.c: Removed ascii_to_unistr() as it does no codepage.
Removed unistr_to_ascii() as it was never used.
printing/nt_printing.c: Removed "DUMMY.XX" files.
rpc_server/srv_spoolss_nt.c: Use dos_PutUniCode() instead of ascii_to_unistr().
Attempted to fix the "return value" size code based on J.F's
comments. This needs looking at.
Jeremy.
(This used to be commit
de99011bf3b2a23bd1854a047382a107aaeb9c68)
Andrew Tridgell [Wed, 21 Jun 2000 12:14:51 +0000 (12:14 +0000)]
fixed two minor bugs in new sys_select()
(This used to be commit
5afc5f503144c81ebc6139719fd88335fd30f4ad)
Tim Potter [Wed, 21 Jun 2000 06:26:21 +0000 (06:26 +0000)]
A neater way of solving the S_ISSOCK, S_ISFIFO problem.
Moved the S_* macros from smb.h to includes.h
(This used to be commit
b37539e323361239659256ef0837f63b6714ab95)
Jeremy Allison [Wed, 21 Jun 2000 02:24:59 +0000 (02:24 +0000)]
Changed default printer driver to "" from NULL.
Jeremy.
(This used to be commit
54bf7c12b89005f0fb7d82108e8403d89931e422)
Jeremy Allison [Tue, 20 Jun 2000 23:58:56 +0000 (23:58 +0000)]
Fixes for Win2k "add printer driver" INFO_LEVEL_6 was wrong, also some
memory fixes.
Jeremy.
(This used to be commit
2a9e645cbddef1cddc5c978310b7efed492758d2)
Jeremy Allison [Tue, 20 Jun 2000 00:32:32 +0000 (00:32 +0000)]
Fixes for IRIX kernel oplocks and systems that don't have nss.h
Jeremy.
(This used to be commit
711f15ac230092bac000e63f99e8dfaa4a644847)
Jeremy Allison [Mon, 19 Jun 2000 21:30:27 +0000 (21:30 +0000)]
Paranoia changes to ensure that anything touched by a signal handler
and the main code is declared as VOLATILE SIG_ATOMIC_T.
Jeremy.
(This used to be commit
b737c784e34b0e1af014cb828ef37d5b6d73c3e2)
Andrew Tridgell [Fri, 16 Jun 2000 23:57:09 +0000 (23:57 +0000)]
reverted lukes changes in param/
apparently they were not deliberate, they were probably a result of
Luke accidentally copying a CVS directory from one spot to another in
error
(This used to be commit
2d35d0cf1d152438c20648d863f5993e672337dc)
Luke Leighton [Fri, 16 Jun 2000 15:53:13 +0000 (15:53 +0000)]
Tim Potter [Fri, 16 Jun 2000 08:47:52 +0000 (08:47 +0000)]
Forgot pipes_struct conversion for api_samr_enum_dom_aliases()
(This used to be commit
66372765e7c3f85240d54894547a150351426d5f)
Tim Potter [Fri, 16 Jun 2000 08:47:04 +0000 (08:47 +0000)]
Whoops - dodgy make proto.
(This used to be commit
87cd080441a924afd57d03e86c926a60c4416967)
Tim Potter [Fri, 16 Jun 2000 08:25:08 +0000 (08:25 +0000)]
Tim Potter [Fri, 16 Jun 2000 08:24:45 +0000 (08:24 +0000)]
Pass the vuid from the connection_struct to the printing back end functions.
(This used to be commit
a8975d6e226e7271f60d5487243301db3c220d87)
Tim Potter [Fri, 16 Jun 2000 08:24:11 +0000 (08:24 +0000)]
Changed function prototype for pipe api functions to take a pipes_struct
instead of two prs_data pointers.
(This used to be commit
73e4466fc30fee149f51a5aa45c26beb783306c5)
Tim Potter [Fri, 16 Jun 2000 08:23:30 +0000 (08:23 +0000)]
Added some permission constants that are set for NT printer security
descriptors. These seem to be made up of the standard and generic access
rights rather than object specific access rights.
(This used to be commit
07099fd4464eca2b5f061ef25309f41b8ab5e00b)
Tim Potter [Fri, 16 Jun 2000 08:21:51 +0000 (08:21 +0000)]
Call print_access_check() function from printing back end.
(This used to be commit
979e083d3dd844b98b03108e636dfe11ae157fb0)
Tim Potter [Fri, 16 Jun 2000 08:20:44 +0000 (08:20 +0000)]
Added print_access_check() function for checking printer security
descriptors. Currently returns True (plus debug output) which should not
affect the behaviour of nt or lanman printing.
(This used to be commit
a9b4710e649e887e07d68c1bf826e00c9811e4ee)
Tim Potter [Fri, 16 Jun 2000 08:18:57 +0000 (08:18 +0000)]
Pass the vuid from the connection_struct to the printing back end functions.
(This used to be commit
6120d03200ed6d89640332aedc75172bdf77e2a0)
Tim Potter [Fri, 16 Jun 2000 08:18:09 +0000 (08:18 +0000)]
Simplified server pipe implementation by changing arguments passed down
through to the individual pipe api calls. Instead of passing two
prs_struct pointers, we now pass the pipes_struct pointer which contains
the former information as well as other useful stuff like the vuid.
Pass the vuid from the pipes_struct down to the lower level spoolss
functions to perform security checks.
ZERO_STRUCTP the info_2 structure before filling it. Free the device mode
field before freeing the info_2 to avoid a memory leak. Fixed
uninitialised pointer bug in fill_job_info_2().
(This used to be commit
a9547b7e3a068941cda5619f05a64e798584535a)
Tim Potter [Fri, 16 Jun 2000 08:15:01 +0000 (08:15 +0000)]
Simplified server pipe implementation by changing arguments passed down
through to the individual pipe api calls. Instead of passing two
prs_struct pointers, we now pass the pipes_struct pointer which contains
the former information as well as other useful stuff like the vuid.
Pass the vuid from the pipes_struct down to the lower level spoolss
functions to perform security checks.
(This used to be commit
f6436aacd631abeda60b87d671993f9e426cc684)
Tim Potter [Fri, 16 Jun 2000 08:12:23 +0000 (08:12 +0000)]
Simplified server pipe implementation by changing arguments passed down
through to the individual pipe api calls. Instead of passing two
prs_struct pointers, we now pass the pipes_struct pointer which contains
the former information as well as other useful stuff like the vuid.
Removed dependency on extern current_user and fetch the vuid from the
pipes_struct.
(This used to be commit
1b06451fff11f54be7def4a427a1528bbb52f3d7)
Tim Potter [Fri, 16 Jun 2000 08:11:32 +0000 (08:11 +0000)]
Simplified server pipe implementation by changing arguments passed down
through to the individual pipe api calls. Instead of passing two
prs_struct pointers, we now pass the pipes_struct pointer which contains
the former information as well as other useful stuff like the vuid.
(This used to be commit
96addba216bad2189120d78f5531d5caa6f37880)
Andrew Tridgell [Thu, 15 Jun 2000 15:30:37 +0000 (15:30 +0000)]
support both read and write locks inside the tdb
(This used to be commit
d0a1f96e0f699f8e3ceb0e0d826423cd643803e7)
Andrew Tridgell [Thu, 15 Jun 2000 15:29:39 +0000 (15:29 +0000)]
- use read locks when possible
- don't use as many locks on a store
(This used to be commit
ee12b10d21022287baf4432d1df743c4b28223b2)
Andrew Tridgell [Thu, 15 Jun 2000 15:28:56 +0000 (15:28 +0000)]
use the right MMAP flag
(This used to be commit
a2f5977ac34d02cd64acd0022cb5bc065eab713f)
Andrew Tridgell [Thu, 15 Jun 2000 14:15:48 +0000 (14:15 +0000)]
open files with O_NONBLOCK when available. This is necessary to
prevent possible deadlocks with kernel leases and harmless when kernel
leases are not used.
basically we don't ever want smbd to block
(This used to be commit
9fd67b94a7e43c9dcbe098940b88879ae8743c00)
Andrew Tridgell [Thu, 15 Jun 2000 09:35:37 +0000 (09:35 +0000)]
added support for kernel level share modes. These are a (small) hack,
I suspect we will either get rid of them or do them properly at some
stage.
(This used to be commit
fabe1f350e1fc58db33d22cebd38652950697ced)
Andrew Tridgell [Thu, 15 Jun 2000 09:31:34 +0000 (09:31 +0000)]
add -d debuglevel option
(This used to be commit
448f21325f8ff53f3ff5e45c22e07f7164529bc9)
Tim Potter [Thu, 15 Jun 2000 02:26:54 +0000 (02:26 +0000)]
Removed some debugs.
(This used to be commit
6faa963b232b4c4d883c1b346c73b2f2b6da6370)
Tim Potter [Wed, 14 Jun 2000 10:25:19 +0000 (10:25 +0000)]
Added nsswitch/common.o to SMBD_OBJ1
(This used to be commit
6c743427dfa2fbd6f3ab47991165db9e705eba20)
Tim Potter [Wed, 14 Jun 2000 10:02:48 +0000 (10:02 +0000)]
Changed server side lsa_lookup_sids function to look up SIDs that we are
not authoritative for using winbindd.
(This used to be commit
a39cdffb141a8e4188b00dfb6eb3317f134cddda)
Tim Potter [Wed, 14 Jun 2000 10:00:31 +0000 (10:00 +0000)]
#include nsswitch/winbind_nss.h
(This used to be commit
ce40ba9fba62d4debc43ab53b8564fc24d1f9e3b)
Tim Potter [Wed, 14 Jun 2000 09:58:12 +0000 (09:58 +0000)]
Merge from TNG.
(This used to be commit
e5cb97dda89fe23612b75861232591e4831733e0)
Tim Potter [Wed, 14 Jun 2000 09:57:51 +0000 (09:57 +0000)]
Merged parse_domain_user() from TNG.
(This used to be commit
f64ac9d9068901862290f7b25874156d6f0d4d73)
Andrew Tridgell [Wed, 14 Jun 2000 07:11:27 +0000 (07:11 +0000)]
allow the notify implementation to choose the select timeout change
(This used to be commit
b1441d9622609af5ef598c5e1e1f5af438dc0731)
Andrew Tridgell [Wed, 14 Jun 2000 07:10:15 +0000 (07:10 +0000)]
fixed autoconf test for kernel change notify support
(This used to be commit
92d0382c9e1d6d31e6047ca3d78523a3204d36f8)
Tim Potter [Wed, 14 Jun 2000 01:48:08 +0000 (01:48 +0000)]
ZERO_STRUCT() of info3 structure before using it.
(This used to be commit
efe7f818c927a925f2dee1ef4f6040c137e0c84e)
Christopher R. Hertel [Tue, 13 Jun 2000 20:41:15 +0000 (20:41 +0000)]
If I use nmblookup to search for node ZOOB#1B and there is no such name
registered within the search space, nmblookup would report
name_query failed to find name ZOOB
I've changed it to report any non-zero type, so the above message becomes
name_query failed to find name ZOOB#1B
If the query is for ZOOB or even ZOOB#00 then the old style error message
is given.
Chris -)-----
(This used to be commit
5ecf0c61718afbc7106e853d327428bd72f77690)
Christopher R. Hertel [Tue, 13 Jun 2000 19:29:32 +0000 (19:29 +0000)]
Removed a patch that Andrew had added because 'insure' was incorrectly
reporting a memory leak in the cache module. I've modified the cache
code to prevent insure getting confused, so the patch can now be removed.
(This used to be commit
50599b0fa2b78109e3bd2cf50007dc69c4059955)
Andrew Tridgell [Tue, 13 Jun 2000 15:47:55 +0000 (15:47 +0000)]
Andrew Tridgell [Tue, 13 Jun 2000 15:47:44 +0000 (15:47 +0000)]
argv parsing fixes
(This used to be commit
502751cc62df7395683dc45d15887535baa5656b)
Andrew Tridgell [Tue, 13 Jun 2000 15:47:23 +0000 (15:47 +0000)]
allow for lots of connections per server
(This used to be commit
4bbc218922d2b1f40d50a611a389c9956851050f)
Andrew Tridgell [Tue, 13 Jun 2000 15:46:46 +0000 (15:46 +0000)]
allow posix locking database to be opened read-only (for smbstatus)
(This used to be commit
b9d78738bb30da3d989dfacc95cfde529f2afca5)
Andrew Tridgell [Tue, 13 Jun 2000 15:46:15 +0000 (15:46 +0000)]
add some brackets
(This used to be commit
bf67721ef5cc6d5ad1762fca320ef612025b4593)
Andrew Tridgell [Tue, 13 Jun 2000 09:33:43 +0000 (09:33 +0000)]
added -L switch to tell smbtorture to use oplocks
(This used to be commit
73033d0803317c7de017cac7f7669f4afb08e7c0)
Andrew Tridgell [Tue, 13 Jun 2000 09:31:43 +0000 (09:31 +0000)]
use DN_ATTRIB kernel change notify attribute
(This used to be commit
9f542484d11b7b908d3170b702b3bad82ba71525)
Andrew Tridgell [Tue, 13 Jun 2000 09:31:15 +0000 (09:31 +0000)]
fixed the change notify bit definitions
(This used to be commit
17d3c3a14885a42889d69459e7b3af7040a45499)
Andrew Tridgell [Tue, 13 Jun 2000 06:33:15 +0000 (06:33 +0000)]
always use the DN_CREATE mask (NT expects file creation always to
cause a notify)
(This used to be commit
20a06b7fb7c855e874b79b86251d597e7797b3c0)
Andrew Tridgell [Tue, 13 Jun 2000 03:29:36 +0000 (03:29 +0000)]
forgot to checkin select.c
(This used to be commit
719bc2f130393a55058f5c45ca6fbd30a78de2dc)
Tim Potter [Tue, 13 Jun 2000 02:15:10 +0000 (02:15 +0000)]
Created manpage for wbinfo program.
Misc documentation updates for winbindd manpage.
(This used to be commit
1f225fddd93d8569d9836310e2f0a56be7f4250e)
Andrew Tridgell [Mon, 12 Jun 2000 17:06:00 +0000 (17:06 +0000)]
enable the Linux change notify code and change some notify debug code
(This used to be commit
c6be511fcc1be79619a0184f03d4c33dbfe12f04)
Andrew Tridgell [Mon, 12 Jun 2000 15:53:31 +0000 (15:53 +0000)]
totally rewrote the async signal, notification and oplock notification
handling in Samba. This was needed due to several limitations and
races in the previous code - as a side effect the new code is much
cleaner :)
in summary:
- changed sys_select() to avoid a signal/select race condition. It is a
rare race but once we have signals doing notification and oplocks it
is important.
- changed our main processing loop to take advantage of the new
sys_select semantics
- split the notify code into implementaion dependent and general
parts. Added the following structure that defines an implementation:
struct cnotify_fns {
void * (*register_notify)(connection_struct *conn, char *path, uint32 flags);
BOOL (*check_notify)(connection_struct *conn, uint16 vuid, char *path, uint32 flags, void *data, time_t t);
void (*remove_notify)(void *data);
};
then I wrote two implementations, one using hash/poll (like our old
code) and the other using the new Linux kernel change notify. It
should be easy to add other change notify implementations by creating
a sructure of the above type.
- fixed a bug in change notify where we were returning the wrong error
code.
- rewrote the core change notify code to be much simpler
- moved to real-time signals for leases and change notify
Amazingly, it all seems to work. I was very surprised!
(This used to be commit
44766c39e0027c762bee8b33b12c621c109a3267)
Andrew Tridgell [Mon, 12 Jun 2000 06:09:39 +0000 (06:09 +0000)]
fixed a bug in BlockSignals() for systems that don't have
sigprocmask()
(This used to be commit
abf06fa90ba49f6a1ec5458d056f8b8cf20b6512)
Andrew Tridgell [Mon, 12 Jun 2000 05:34:14 +0000 (05:34 +0000)]
fixed comments at top of module
(This used to be commit
02577ab7d275dfb49e104f3358cb3caa66b3b09e)
Andrew Tridgell [Mon, 12 Jun 2000 05:32:28 +0000 (05:32 +0000)]
split all the change notify code out into a separate module
smbd/notify.c. All the data structures are now private to that
module.
this is in preparation for Linux kernel support for change notify
(coming soon to a CVS tree near you)
(This used to be commit
1bb0aad4f66dbfa2d0f767ea90f926affff20b17)
Andrew Tridgell [Sun, 11 Jun 2000 06:46:05 +0000 (06:46 +0000)]
a better test for oplocks being enabled in this kernel
(This used to be commit
cc0e919fdcb116c8f9688a4f5d7803fc8d7f9588)
Andrew Tridgell [Sun, 11 Jun 2000 06:24:54 +0000 (06:24 +0000)]
fixed Linux capabilities handling
I used a trick where CAP_LEASE isn't claimed until it is needed. This
means we avoid a system call per setreuid(), and never call capset()
unless a user tries to get a oplock on a file that they don't own
(This used to be commit
afa98d511f70f455d599c3a36dd25e49fe74ac09)