amitay/samba.git
23 years agoSome more sec_ctx changes. Modified some fields in the pipe_struct
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)

23 years agofirst pass at merging rpcclient from TNG to HEAD. You can get a
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)

23 years agofirst pass at merging rpcclient from TNG to HEAD. You can get a
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)

23 years agofirst pass at merging rpcclient from TNG to HEAD. You can get a
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)

23 years agofirst pass at merging rpcclient from TNG to HEAD. You can get a
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)

23 years agoRenamed generic_request() to winbindd_request()
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)

23 years agoRe-ran autoconf
Tim Potter [Mon, 3 Jul 2000 00:57:15 +0000 (00:57 +0000)]
Re-ran autoconf
(This used to be commit 2003c11c3e1635fec4702f5a704b5ce9b0bc3f64)

23 years agoreverting Jeremy's changes to enumprinterdata.
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)

23 years agoFound that the minimum priority is 1 and not 0 on NT.
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)

23 years agoRemoved unneccessary ()'s afer &'s that made it look like we
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)

23 years agoMerge from TNG.
Tim Potter [Fri, 30 Jun 2000 06:48:47 +0000 (06:48 +0000)]
Merge from TNG.
(This used to be commit b46fc0ed040ff24bb4e348904fdb0e9788364837)

23 years agoAdded more args to smbclient wrapper - there's probably a better way
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)

23 years agoUpdated documentation for wbinfo and winbindd.
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)

23 years agoFixed oops with missing MANGLE_PATH directive.
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)

23 years agosimpler configure test
Andrew Tridgell [Thu, 29 Jun 2000 08:23:56 +0000 (08:23 +0000)]
simpler configure test
(This used to be commit 7752c14c313bf9b565828181647fb71457167d92)

23 years agoslightly saner defaults
Andrew Tridgell [Thu, 29 Jun 2000 08:22:00 +0000 (08:22 +0000)]
slightly saner defaults
(This used to be commit fae3acc574c6e78121e6a1d464b67a15fb025304)

23 years agoTidy up current spool code - added some JRATEST ifdefs to allow
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)

23 years agoRemoved extra uint32 field in auto-notify reply. This fixes some spoolss.exe
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)

23 years agoChanging drivers using the properties page works - but only if getting/setting
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)

23 years agoFixed display of "Everyone" in SD's.
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)

23 years agofixed size alignment in talloc
Andrew Tridgell [Mon, 26 Jun 2000 08:18:42 +0000 (08:18 +0000)]
fixed size alignment in talloc
(This used to be commit 064cdb7ee69bff3af12d1e0b3c3b59207c594681)

23 years agolib/util_sid.c: Uninitialized memory read.
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)

23 years agoFix a malloc of zero problem.
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)

23 years agolib/util_unistr.c: Off-by-one fix for dos_PutUniStr from John Reilly jreilly@hp.com.
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)

23 years agoDon't return a value for a void function.
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)

23 years agoTest harness stuff for compiling things.
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)

23 years agomake proto
Tim Potter [Fri, 23 Jun 2000 06:53:33 +0000 (06:53 +0000)]
make proto
(This used to be commit 927b7772a1246d60bccdf79cdb1f054c449c6bb6)

23 years agoSome compile fixes.
Tim Potter [Fri, 23 Jun 2000 06:47:11 +0000 (06:47 +0000)]
Some compile fixes.
(This used to be commit 4d0c09cb4f17b60ab99767d3e61f2ad50c6c5c30)

23 years agoGot a bit carried away deleting things.
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)

23 years agoRemoved unused variables.
Tim Potter [Fri, 23 Jun 2000 06:36:22 +0000 (06:36 +0000)]
Removed unused variables.
(This used to be commit a75e738211e744adb966bcbc24371554c9642220)

23 years agoAdded parenthesis around definition of PRINTER_ACE_PRINT.
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)

23 years agoAdded return for become_authenticated_pipe_user() function.
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)

23 years agoTests for new security context stuff.
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)

23 years agomake proto
Tim Potter [Fri, 23 Jun 2000 06:20:03 +0000 (06:20 +0000)]
make proto
(This used to be commit 2d3312249b3755e46d913dd40325b85db4aae62e)

23 years agoAdded MAX_SEC_CTX_DEPTH
Tim Potter [Fri, 23 Jun 2000 06:19:26 +0000 (06:19 +0000)]
Added MAX_SEC_CTX_DEPTH
(This used to be commit 2bf21395ba4999d0392d6f54093ddc8861323ddd)

23 years agoDelete OriginalDir stuff.
Tim Potter [Fri, 23 Jun 2000 05:57:48 +0000 (05:57 +0000)]
Delete OriginalDir stuff.
(This used to be commit 3d0f1845c8cefccfabcfd35694264c1e5f52c3af)

23 years agoMoved some static functions to sec_ctx.c
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)

23 years agoAdded smbd/sec_ctx.o to smbd objects.
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)

23 years agoCall init_sec_ctx() instead of init_uid().
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)

23 years agoRemoved save directory argument to become_root() calls. Probably most of
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)

23 years agoI've been working on refactoring some of the mess that is the become_user()
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)

23 years agojust enough to get rpcclient to compile. Look for #if 0
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)

23 years agoChanged enumports to show printernames as ports. In line with 'the grand plan' :-)
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)

24 years agolib/util_unistr.c: Removed ascii_to_unistr() as it does no codepage.
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)

24 years agofixed two minor bugs in new sys_select()
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)

24 years agoA neater way of solving the S_ISSOCK, S_ISFIFO problem.
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)

24 years agoChanged default printer driver to "" from NULL.
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)

24 years agoFixes for Win2k "add printer driver" INFO_LEVEL_6 was wrong, also some
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)

24 years agoFixes for IRIX kernel oplocks and systems that don't have nss.h
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)

24 years agoParanoia changes to ensure that anything touched by a signal handler
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)

24 years agoreverted lukes changes in param/
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)

24 years agomore update.
Luke Leighton [Fri, 16 Jun 2000 15:53:13 +0000 (15:53 +0000)]
more update.
(This used to be commit ac91ef30932e3e472a16c4c756f6dfddc1b18487)

24 years agoForgot pipes_struct conversion for api_samr_enum_dom_aliases()
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)

24 years agoWhoops - dodgy make proto.
Tim Potter [Fri, 16 Jun 2000 08:47:04 +0000 (08:47 +0000)]
Whoops - dodgy make proto.
(This used to be commit 87cd080441a924afd57d03e86c926a60c4416967)

24 years agomake proto
Tim Potter [Fri, 16 Jun 2000 08:25:08 +0000 (08:25 +0000)]
make proto
(This used to be commit b3f2946d3958ef92ad7d30a52d00bcfd50229388)

24 years agoPass the vuid from the connection_struct to the printing back end functions.
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)

24 years agoChanged function prototype for pipe api functions to take a pipes_struct
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)

24 years agoAdded some permission constants that are set for NT printer security
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)

24 years agoCall print_access_check() function from printing back end.
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)

24 years agoAdded print_access_check() function for checking printer security
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)

24 years agoPass the vuid from the connection_struct to the printing back end functions.
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)

24 years agoSimplified server pipe implementation by changing arguments passed down
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)

24 years agoSimplified server pipe implementation by changing arguments passed down
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)

24 years agoSimplified server pipe implementation by changing arguments passed down
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)

24 years agoSimplified server pipe implementation by changing arguments passed down
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)

24 years agosupport both read and write locks inside the tdb
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)

24 years ago- use read locks when possible
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)

24 years agouse the right MMAP flag
Andrew Tridgell [Thu, 15 Jun 2000 15:28:56 +0000 (15:28 +0000)]
use the right MMAP flag
(This used to be commit a2f5977ac34d02cd64acd0022cb5bc065eab713f)

24 years agoopen files with O_NONBLOCK when available. This is necessary to
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)

24 years agoadded support for kernel level share modes. These are a (small) hack,
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)

24 years agoadd -d debuglevel option
Andrew Tridgell [Thu, 15 Jun 2000 09:31:34 +0000 (09:31 +0000)]
add -d debuglevel option
(This used to be commit 448f21325f8ff53f3ff5e45c22e07f7164529bc9)

24 years agoRemoved some debugs.
Tim Potter [Thu, 15 Jun 2000 02:26:54 +0000 (02:26 +0000)]
Removed some debugs.
(This used to be commit 6faa963b232b4c4d883c1b346c73b2f2b6da6370)

24 years agoAdded nsswitch/common.o to SMBD_OBJ1
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)

24 years agoChanged server side lsa_lookup_sids function to look up SIDs that we are
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)

24 years ago#include nsswitch/winbind_nss.h
Tim Potter [Wed, 14 Jun 2000 10:00:31 +0000 (10:00 +0000)]
#include nsswitch/winbind_nss.h
(This used to be commit ce40ba9fba62d4debc43ab53b8564fc24d1f9e3b)

24 years agoMerge from TNG.
Tim Potter [Wed, 14 Jun 2000 09:58:12 +0000 (09:58 +0000)]
Merge from TNG.
(This used to be commit e5cb97dda89fe23612b75861232591e4831733e0)

24 years agoMerged parse_domain_user() from TNG.
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)

24 years agoallow the notify implementation to choose the select timeout change
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)

24 years agofixed autoconf test for kernel change notify support
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)

24 years agoZERO_STRUCT() of info3 structure before using it.
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)

24 years agoIf I use nmblookup to search for node ZOOB#1B and there is no such name
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)

24 years agoRemoved a patch that Andrew had added because 'insure' was incorrectly
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)

24 years agoproto update
Andrew Tridgell [Tue, 13 Jun 2000 15:47:55 +0000 (15:47 +0000)]
proto update
(This used to be commit 7d0f9258589c2856dbc54a10ee35c26201d16f41)

24 years agoargv parsing fixes
Andrew Tridgell [Tue, 13 Jun 2000 15:47:44 +0000 (15:47 +0000)]
argv parsing fixes
(This used to be commit 502751cc62df7395683dc45d15887535baa5656b)

24 years agoallow for lots of connections per server
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)

24 years agoallow posix locking database to be opened read-only (for smbstatus)
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)

24 years agoadd some brackets
Andrew Tridgell [Tue, 13 Jun 2000 15:46:15 +0000 (15:46 +0000)]
add some brackets
(This used to be commit bf67721ef5cc6d5ad1762fca320ef612025b4593)

24 years agoadded -L switch to tell smbtorture to use oplocks
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)

24 years agouse DN_ATTRIB kernel change notify attribute
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)

24 years agofixed the change notify bit definitions
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)

24 years agoalways use the DN_CREATE mask (NT expects file creation always to
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)

24 years agoforgot to checkin select.c
Andrew Tridgell [Tue, 13 Jun 2000 03:29:36 +0000 (03:29 +0000)]
forgot to checkin select.c
(This used to be commit 719bc2f130393a55058f5c45ca6fbd30a78de2dc)

24 years agoCreated manpage for wbinfo program.
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)

24 years agoenable the Linux change notify code and change some notify debug code
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)

24 years agototally rewrote the async signal, notification and oplock notification
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)

24 years agofixed a bug in BlockSignals() for systems that don't have
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)

24 years agofixed comments at top of module
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)

24 years agosplit all the change notify code out into a separate module
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)

24 years agoa better test for oplocks being enabled in this kernel
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)

24 years agofixed Linux capabilities handling
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)