summaryrefslogtreecommitdiff
path: root/source3/smbd
AgeCommit message (Collapse)AuthorFilesLines
2000-06-12totally rewrote the async signal, notification and oplock notificationAndrew Tridgell8-465/+647
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)
2000-06-12fixed comments at top of moduleAndrew Tridgell1-2/+3
(This used to be commit 02577ab7d275dfb49e104f3358cb3caa66b3b09e)
2000-06-12split all the change notify code out into a separate moduleAndrew Tridgell2-392/+427
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)
2000-06-11a better test for oplocks being enabled in this kernelAndrew Tridgell1-1/+18
(This used to be commit cc0e919fdcb116c8f9688a4f5d7803fc8d7f9588)
2000-06-11fixed Linux capabilities handlingAndrew Tridgell1-21/+39
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)
2000-06-11Linux kernel oplocks now seem to work, but need a _lot_ of testingAndrew Tridgell5-60/+125
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)
2000-06-10a first pass at Linux kernel oplocks supportAndrew Tridgell3-15/+207
(This used to be commit 3253085d9883a181c04b9c9ecf7d0ccdfbcee88d)
2000-06-10continued the split of the kernel level oplocks code into a moreAndrew Tridgell3-392/+412
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)
2000-06-09(Correct) fix for desired_access being zero in map_share_mode().Jeremy Allison1-12/+12
Jeremy. (This used to be commit cc447fbe3cd77d57e18c3d1dff94a95d6032c311)
2000-06-09Luke, I am moving the code back into passdb/passdb.c, this the correctJeremy Allison2-55/+15
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)
2000-06-09clean up oplock capability code ready for Linux codeAndrew Tridgell3-161/+155
(This used to be commit 70dcc791b45ac64fc536ef449e4e6b53b2b68fd4)
2000-06-09split some of the irix kernel oplocks code into a functionAndrew Tridgell1-68/+74
(This used to be commit 6b888d600d95e2595c3f79494edcc55e88e2980d)
2000-06-09free NET_USER_INFO_3 gids when vuser invalidated.Luke Leighton1-0/+4
(This used to be commit 2f056c2aadd2e16d89b66aabd1c166ab8d5abd76)
2000-06-09dynamic allocation of NET_USER_INFO_3 gids.Luke Leighton1-23/+37
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)
2000-06-09reverted jeremy's changes that removed NET_USER_INFO_3. will you pleaseLuke Leighton2-29/+56
not just undercut work in progress, thank you. (This used to be commit 86d440a88c948727bfcfedc694c52c58f9687d8b)
2000-06-08Change from "David S. Chappell" <David.Chappell@mail.cc.trincoll.edu>Jeremy Allison1-4/+4
to make "printer driver file" a share parameter. This fits better with the new NT printing subsystem. Jeremy. (This used to be commit 7afb68461f3938a647a6c48689293af8ed36ccb7)
2000-06-08Fix for map_share_mode to allow desired access of zero map to stat open.Jeremy Allison1-0/+11
Jeremy. (This used to be commit b0242080fe464e71815431559fe54d109e0b92f2)
2000-06-08include/smb.h: Removed NET_USER_3 struct from user struct. It doesn't belong ↵Jeremy Allison2-56/+29
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)
2000-06-08added a NET_USER_INFO_3 struct to user_struct.Luke Leighton2-2/+38
register_vuid fills it with constructed info. (This used to be commit b1889e4334012b1b2caa604b859da4271509fc87)
2000-06-08- changed HAVE_KERNEL_OPLOCKS to HAVE_KERNEL_OPLOCKS_IRIXAndrew Tridgell1-14/+14
- added autoconf test for HAVE_KERNEL_OPLOCKS_LINUX (This used to be commit 0368f68529a9244663c199068e95d1a1d93152fa)
2000-06-08Cause printer SD's to be displayed correctly (full control).Jeremy Allison1-1/+1
Jeremy. (This used to be commit 341d07c516865bdd9be99f98cd0754d12b25f9c0)
2000-06-07Fixing get/set of security descriptors.Jeremy Allison3-1/+8
Removed ugly hack for NT printing. Fixed up tdb parse stuff memory leaks. Jeremy. (This used to be commit 8ef41f31c53e14ad057d883810a1cd2301fede2a)
2000-06-03moved secrets fns into secrets.cAndrew Tridgell2-2/+2
(This used to be commit f890bcf06786e7c63bf76fad2fd46d287a99a270)
2000-06-03rpc_client/cli_lsarpc.c: Removed unused variable.Jeremy Allison1-9/+9
rpc_server/srv_spoolss_nt.c: Fixed more memory leaks. smbd/nttrans.c: Fixed shadow variable problem. Jeremy. (This used to be commit f0a7540831181d3a47e7f8ce8be55a36a2f2aba1)
2000-06-01param/loadparm.c: Looks like someone ran indent on this !Jeremy Allison1-4/+4
passdb/smbpass.c: Insure uninitialized memory reference fix. printing/nt_printing.c: rpc_server/srv_spoolss_nt.c: Insure memory leak fixes. smbd/unix_acls.c: Shadow ref fix. Jeremy. (This used to be commit d175d3ebefc053e9badd91ca5f2d8bd03eb6705d)
2000-06-01Getting back to a compilable state (not there yet but close).Jeremy Allison1-0/+3
Added patches for random -> sys_random. Added set_effective_xxx patches for AFS code. Memory allocation changes in spoolss code. Jeremy. (This used to be commit c2099cfb033c2cdb6035f4f7f50ce21b98e1584d)
2000-05-31Changed interface to set_nt_acl slightly.Jeremy Allison1-1/+1
Jeremy. (This used to be commit 4534eae405f952d4b93e445571fc487e66a7541b)
2000-05-31Working UNIX -> NT ACL mapper.Jeremy Allison1-2/+4
Jeremy. (This used to be commit f09c53f6b15e96ab1d306c044cbdcd086006c977)
2000-05-31Fixed interface between new ACLS and nttrans code.Jeremy Allison2-183/+586
Jeremy. (This used to be commit 400263245b4e5344b496c5de52a659f040206798)
2000-05-28debug output to /tmp.Luke Leighton1-1/+1
(This used to be commit f9077e50cba5c7c3e6cf7739888120d8cc757c7c)
2000-05-27prs_give_memory in wrong place, also poss. was losing mem.Luke Leighton2-7/+34
(This used to be commit 9805e17cd0ce427c329a8b5a8318d5f75227e283)
2000-05-27fixed nttrans.cLuke Leighton1-406/+38
(This used to be commit 06cd46b0ec10b32af54edd8256d2fdbec45e1371)
2000-05-26Changed MS_DFS to WITH_MSDFS throughout.Shirish Kalele3-4/+5
Fixed trans2 calls on IPC$ to let dfs referral calls through. (This used to be commit e0965a80bdca5239886b11ef55dc29fed261bfc0)
2000-05-24got rid of lp_revalidate()Andrew Tridgell1-1/+1
(This used to be commit 8dea95e62c7f4723cd4b71c1b03c613386392c49)
2000-05-23Did a proper fix for the file access on IPC$. Denied all pipe opens onJeremy Allison3-126/+202
trans2 open calls as we don't have the pipe open response coded up yet. Jeremy. (This used to be commit 8142e27c9c32aba5a7dabc48a676b93cf680151b)
2000-05-23Fixed bug where file access was allowed on IPC$ share.Jeremy Allison4-5/+11
Return correct error codes on invalid share name. Jeremy. (This used to be commit 420d6bc4809cef9d74354175d0fa956ab4e8ac3c)
2000-05-18Added the NETDFS pipe to allow remote administration of the msdfs symlinksShirish Kalele1-0/+3
on the samba server. (This used to be commit 15e7d8f6c5cddf6ce409ee2505744250d181ec34)
2000-05-16The new msdfs implementation that uses symlinks to point to otherShirish Kalele3-14/+14
servers. Very intuitive. Removed the dfs map parsing code and tdb maintenance code (files msdfs/parse_dfs_map.c & msdfs/msdfs_tdb.c), dfs map loading and unloading calls (param/loadparm.c smbd/server.c). Added code to display msdfs format symlinks as directories in a transact2_findfirst/findnext. (smbd/trans2.c) Modified msdfs/msdfs.c to use the msdfs symlinks to create dfs referrals. Changed msdfs/README to reflect new operability. (This used to be commit 6803d2574fab9e5931786d5c9aa5dc5867bb5f05)
2000-05-15passdb/secrets.c: Fix typo in comment.Jeremy Allison2-10/+0
rpc_server/srv_pipe.c: Use accessor functions rather than diddling with structure internals directly. smbd/process.c: smbd/reply.c: Remove READ_PREDICTION #ifdefs. Jeremy. (This used to be commit eba825ff030a175bd271caa6f543379dfdbbd646)
2000-05-12added spool_io_printer_driver_info_level_6()Andrew Tridgell1-1/+1
thsi function and the associated header structure were autogenerated using a little awk based code geerator I wroe ths evening. I'll commit that next ... (This used to be commit 974813f0d4afb6c14ed27c48ab24b19932557f9f)
2000-05-12use "winbind separator" option for domain/user separator characterAndrew Tridgell2-2/+2
(This used to be commit 6cbb826b154e61085fd651116caf472d4d438c1d)
2000-05-12fixed error code for buffer_too_large in trans replyAndrew Tridgell1-1/+1
(This used to be commit a0a556a36b8ad0f14f97a1b7ccc5d429bf8f950e)
2000-05-12fixed a problem with appliance operationAndrew Tridgell1-2/+2
(This used to be commit acf9286e82b851e25ee863f673bff713a38002e7)
2000-05-12use our primary domain trust account for trusted domain authenticationAndrew Tridgell1-2/+2
(This used to be commit db90a4b9609a980fa2f4328d38a0d2c60a1384a0)
2000-05-12Check fstat return for error.Jeremy Allison1-1/+5
Jeremy. (This used to be commit c54e77b1f9defce3d6c2e530e0fb460c2b0c54c2)
2000-05-10lib/util_unistr.c:Jeremy Allison1-1/+1
libsmb/clilist.c: rpc_server/srv_spoolss_nt.c: smbd/trans2.c: Changed unistr_to_ascii to unistr_to_dos - do codepage conversion. msdfs/msdfs.c: Removed stub unistr_to_dos. libsmb/pwd_cache.c: Removed obfuscation functions as they don't do anything and don't add any security. Jeremy. (This used to be commit 1ed146467e764e6a81d8f78cd58fb5765ebf5d21)
2000-05-10- changed smb_getpwnam() to use winbind style usernamesAndrew Tridgell3-10/+21
- finished ntdom -> winbind rename in head (This used to be commit ada483cb56453afc6df4ec4be18bfe5e943c7150)
2000-05-10treat a blank "password server =" line as a "*" if in domain securityAndrew Tridgell1-3/+2
(This used to be commit 5a617c013cce65434d315dc33279a4bc28dc63de)
2000-05-10check for sighup on each packet - otherwise it can take a _long_ timeAndrew Tridgell1-0/+12
to reload services (This used to be commit 0fb4ba4e037f25b8b75bcae0ecb1d9b43f0f9e5f)
2000-05-10formatting fixAndrew Tridgell1-1/+1
(This used to be commit 3e710f660253fe6fa5c0ed7435ec66a2ed908b28)