samba.git
20 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)

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

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

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

20 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)

20 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)

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

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

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

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 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)

20 years agoLinux kernel oplocks now seem to work, but need a _lot_ of testing
Andrew Tridgell [Sun, 11 Jun 2000 05:57:58 +0000 (05:57 +0000)]
Linux kernel oplocks now seem to work, but need a _lot_ of testing

I had to modify sys_select() to not loop on EINTR. I added a wrapper
called sys_select_intr() which gives the old behaviour.
(This used to be commit b28cc4163bc2faaa80c5782fc02c8f03c410cdeb)

20 years agoparsing code for reply[open|close]printer in preparation of the event
Jean-François Micouleau [Sat, 10 Jun 2000 22:35:52 +0000 (22:35 +0000)]
parsing code for reply[open|close]printer in preparation of the event
stuff.

J.F.
(This used to be commit 1871d4a3f64401f9a6f749ce26d1715e3bcdeac3)

20 years agoa first pass at Linux kernel oplocks support
Andrew Tridgell [Sat, 10 Jun 2000 14:29:31 +0000 (14:29 +0000)]
a first pass at Linux kernel oplocks support
(This used to be commit 3253085d9883a181c04b9c9ecf7d0ccdfbcee88d)

20 years agocontinued the split of the kernel level oplocks code into a more
Andrew Tridgell [Sat, 10 Jun 2000 13:38:07 +0000 (13:38 +0000)]
continued the split of the kernel level oplocks code into a more
modular form. In this pass I added oplock_irix.c and added a "struct
kernel_oplocks" that describes a kernel oplock implementation.
(This used to be commit b5ceab810292602ea9a81696c20a781c16b706c2)

20 years agocontinued the split of the kernel level oplocks code into a more
Andrew Tridgell [Sat, 10 Jun 2000 13:35:20 +0000 (13:35 +0000)]
continued the split of the kernel level oplocks code into a more
modular form. In this pass I added oplock_irix.c and added a "struct
kernel_oplocks" that describes a kernel oplock implementation.

I also removed the maintainence mode from the Makefile. It was causing
too much trouble. If someone really likes it they can keep a patch
around to enable it themselves.
(This used to be commit fbeb9804344ab3aa1dd6635a5524aa09065e04f5)

20 years ago(Correct) fix for desired_access being zero in map_share_mode().
Jeremy Allison [Fri, 9 Jun 2000 19:41:48 +0000 (19:41 +0000)]
(Correct) fix for desired_access being zero in map_share_mode().
Jeremy.
(This used to be commit cc447fbe3cd77d57e18c3d1dff94a95d6032c311)

20 years agoFix from Elrond for hash table corruption. Should fix stat cache bug (I
Jeremy Allison [Fri, 9 Jun 2000 18:54:41 +0000 (18:54 +0000)]
Fix from Elrond for hash table corruption. Should fix stat cache bug (I
sincerely hope :-). Thanks elrond !
Jeremy.
(This used to be commit 0d59e8c6bf49e06f11b386f9d805474771365f52)

20 years agoLuke, I am moving the code back into passdb/passdb.c, this the correct
Jeremy Allison [Fri, 9 Jun 2000 18:45:31 +0000 (18:45 +0000)]
Luke, I am moving the code back into passdb/passdb.c, this the correct
place to do this, not in smbd/passwd.c

Please don't change this without asking first, I have run this past
Andrew so talk to him (I'm on vacation next week).

I also removed the g_newXXX macros. There are essentially a private C extension,
not used anywhere else in the code, and add no functionality over malloc(XX)
and make the code harder to understand (everyone knows what malloc does).

Jeremy.
(This used to be commit e1b1b6fb6794ba02e1fea510a981fa0ce0d12b58)

20 years agodo some standard_sub_advanced() in api_net_sam_logon on lp_logon_xxx().
Jean-François Micouleau [Fri, 9 Jun 2000 14:13:11 +0000 (14:13 +0000)]
do some standard_sub_advanced() in api_net_sam_logon on lp_logon_xxx().
and if you have unix realname=yes, you get the gecos name when locking the
station.

J.F.
(This used to be commit b5ad24ae0b15643df5832e2369fb4e43c98a1359)

20 years agountiltime should be 0 by default to cover the whole 24 hours.
Jean-François Micouleau [Fri, 9 Jun 2000 14:08:03 +0000 (14:08 +0000)]
untiltime should be 0 by default to cover the whole 24 hours.

J.F.
(This used to be commit 53aff484a6a37c83fd2e21d48fd1a5fcbad2f511)

20 years agoclean up oplock capability code ready for Linux code
Andrew Tridgell [Fri, 9 Jun 2000 06:58:06 +0000 (06:58 +0000)]
clean up oplock capability code ready for Linux code
(This used to be commit 70dcc791b45ac64fc536ef449e4e6b53b2b68fd4)

20 years agothe Linux F_GETLEASE value has changed
Andrew Tridgell [Fri, 9 Jun 2000 06:55:25 +0000 (06:55 +0000)]
the Linux F_GETLEASE value has changed
(This used to be commit 2a3c994a96dc96f379c4cffbcc3ca314c3d6d292)

20 years agosome templates needed for the new aparser stuff
Andrew Tridgell [Fri, 9 Jun 2000 04:22:31 +0000 (04:22 +0000)]
some templates needed for the new aparser stuff
(This used to be commit e13089b040d5df4e611a120ec7fce20757dc196a)

20 years agosplit some of the irix kernel oplocks code into a function
Andrew Tridgell [Fri, 9 Jun 2000 04:22:02 +0000 (04:22 +0000)]
split some of the irix kernel oplocks code into a function
(This used to be commit 6b888d600d95e2595c3f79494edcc55e88e2980d)

20 years agofree NET_USER_INFO_3 gids when vuser invalidated.
Luke Leighton [Fri, 9 Jun 2000 03:30:54 +0000 (03:30 +0000)]
free NET_USER_INFO_3 gids when vuser invalidated.
(This used to be commit 2f056c2aadd2e16d89b66aabd1c166ab8d5abd76)

20 years agodynamic allocation of NET_USER_INFO_3 gids.
Luke Leighton [Fri, 9 Jun 2000 03:00:34 +0000 (03:00 +0000)]
dynamic allocation of NET_USER_INFO_3 gids.

jeremy, the intent is to call se_access_check() with usr-sid, grp-sid,
array-of-group-rids (but array-of-group-sids would do).

please do look at smbd/lanman.c's api_NetWkstaGetInfo, it will show you
that we really do need to store the entire NET_USER_INFO_3 structure.

then again, api_NetWkstaGetInfo is only used by win9x so who cares :)
(This used to be commit bd34f652390adc32c4959d164c628687f526d977)

20 years agostarted adding support for relative, plus options for autoalignment
Andrew Tridgell [Fri, 9 Jun 2000 02:59:50 +0000 (02:59 +0000)]
started adding support for relative, plus options for autoalignment
so the same parser generator can be uses for cifs and rpc
(This used to be commit c7829fa0d87081d9b3f33468527583e3b763916b)

20 years agoreverted jeremy's changes that removed NET_USER_INFO_3. will you please
Luke Leighton [Fri, 9 Jun 2000 01:26:42 +0000 (01:26 +0000)]
reverted jeremy's changes that removed NET_USER_INFO_3.  will you please
not just undercut work in progress, thank you.
(This used to be commit 86d440a88c948727bfcfedc694c52c58f9687d8b)

20 years agoChange from "David S. Chappell" <David.Chappell@mail.cc.trincoll.edu>
Jeremy Allison [Thu, 8 Jun 2000 22:24:13 +0000 (22:24 +0000)]
Change from "David S. Chappell" <David.Chappell@mail.cc.trincoll.edu>
to make "printer driver file" a share parameter. This fits better with
the new NT printing subsystem.
Jeremy.
(This used to be commit 7afb68461f3938a647a6c48689293af8ed36ccb7)

20 years agoFix for map_share_mode to allow desired access of zero map to stat open.
Jeremy Allison [Thu, 8 Jun 2000 21:54:50 +0000 (21:54 +0000)]
Fix for map_share_mode to allow desired access of zero map to stat open.
Jeremy.
(This used to be commit b0242080fe464e71815431559fe54d109e0b92f2)

20 years agoinclude/smb.h: Removed NET_USER_3 struct from user struct. It doesn't belong there...
Jeremy Allison [Thu, 8 Jun 2000 17:50:19 +0000 (17:50 +0000)]
include/smb.h: Removed NET_USER_3 struct from user struct. It doesn't belong there (yet)
as there is no infrastructure for it. Replaced it with a dynamic array
of group SIDs plus a user.
passdb/passdb.c: Added setup_user_sids() function. This is where the lookup should be done,
eventually calling winbind.
smbd/password.c: Changed to call setup_user_sids(). Removed spurious DEBUG(0) statements.
smbd/reply.c: Removed extra parameter to register_vuid().

Jeremy.
(This used to be commit 425f4ad9a5e0e7d49620276100ade7a0cae47011)

20 years agoAgain, just syncronizing. The a function name was changed in the sll
Christopher R. Hertel [Thu, 8 Jun 2000 17:42:20 +0000 (17:42 +0000)]
Again, just syncronizing.  The a function name was changed in the sll
module but none of Samba uses it directly.  The macros are used instead
so the change is hidden.  Good.
(This used to be commit c5d7ee506da31bbfbd6775c2dbcd121a44de794d)

20 years agoBringing these up to date with what I've got on my site. The fixes include
Christopher R. Hertel [Thu, 8 Jun 2000 17:29:05 +0000 (17:29 +0000)]
Bringing these up to date with what I've got on my site.  The fixes include
the change that prevents 'insure' from becomming confused and issuing leak
reports.  Some minor speed fixes.  That sort of thing.

Chris -)-----
(This used to be commit 164cc91d81f691f1ba4f16ba203230f745ee73dc)

20 years agoadded a NET_USER_INFO_3 struct to user_struct.
Luke Leighton [Thu, 8 Jun 2000 13:56:07 +0000 (13:56 +0000)]
added a NET_USER_INFO_3 struct to user_struct.

register_vuid fills it with constructed info.
(This used to be commit b1889e4334012b1b2caa604b859da4271509fc87)

20 years agoadded se_access_check.
Luke Leighton [Thu, 8 Jun 2000 08:41:28 +0000 (08:41 +0000)]
added se_access_check.
(This used to be commit 6de329f6bf9c26e132869cf43d4976d4881e285c)

20 years agomake_sec_acl was passed pointer to static array ace[2], oops.
Luke Leighton [Thu, 8 Jun 2000 07:55:24 +0000 (07:55 +0000)]
make_sec_acl was passed pointer to static array ace[2], oops.
(This used to be commit f3502d846c99c77b13ce75977f5dc79cc1a3506d)

20 years ago- changed HAVE_KERNEL_OPLOCKS to HAVE_KERNEL_OPLOCKS_IRIX
Andrew Tridgell [Thu, 8 Jun 2000 07:40:55 +0000 (07:40 +0000)]
- changed HAVE_KERNEL_OPLOCKS to HAVE_KERNEL_OPLOCKS_IRIX
- added autoconf test for HAVE_KERNEL_OPLOCKS_LINUX
(This used to be commit 0368f68529a9244663c199068e95d1a1d93152fa)

20 years agoMoved tdb functions that access parse structs into parse_prs.c
Jeremy Allison [Thu, 8 Jun 2000 01:16:42 +0000 (01:16 +0000)]
Moved tdb functions that access parse structs into parse_prs.c
to prevent builkd breaking.
Jeremy.
(This used to be commit 6c7adeab0f92844ecefbcb923d0d4763d4c3eaa5)

20 years agoCause printer SD's to be displayed correctly (full control).
Jeremy Allison [Thu, 8 Jun 2000 00:17:05 +0000 (00:17 +0000)]
Cause printer SD's to be displayed correctly (full control).
Jeremy.
(This used to be commit 341d07c516865bdd9be99f98cd0754d12b25f9c0)

20 years agoFixing get/set of security descriptors.
Jeremy Allison [Wed, 7 Jun 2000 01:49:23 +0000 (01:49 +0000)]
Fixing get/set of security descriptors.
Removed ugly hack for NT printing.
Fixed up tdb parse stuff memory leaks.
Jeremy.
(This used to be commit 8ef41f31c53e14ad057d883810a1cd2301fede2a)

20 years agoMemory leak fixes.
Jeremy Allison [Tue, 6 Jun 2000 20:44:58 +0000 (20:44 +0000)]
Memory leak fixes.
Jeremy.
(This used to be commit 34b63896ab1543936d6b9b382ef6727a161b6bf2)

20 years agofixed sizeof() typo
Andrew Tridgell [Tue, 6 Jun 2000 01:53:05 +0000 (01:53 +0000)]
fixed sizeof() typo
(This used to be commit 1da9c5531a8e26dc63b31a27fa73e0932278acb4)