Age | Commit message (Collapse) | Author | Files | Lines |
|
(This used to be commit c6be511fcc1be79619a0184f03d4c33dbfe12f04)
|
|
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)
|
|
sigprocmask()
(This used to be commit abf06fa90ba49f6a1ec5458d056f8b8cf20b6512)
|
|
(This used to be commit 02577ab7d275dfb49e104f3358cb3caa66b3b09e)
|
|
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)
|
|
(This used to be commit cc0e919fdcb116c8f9688a4f5d7803fc8d7f9588)
|
|
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)
|
|
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)
|
|
stuff.
J.F.
(This used to be commit 1871d4a3f64401f9a6f749ce26d1715e3bcdeac3)
|
|
(This used to be commit 3253085d9883a181c04b9c9ecf7d0ccdfbcee88d)
|
|
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)
|
|
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)
|
|
Jeremy.
(This used to be commit cc447fbe3cd77d57e18c3d1dff94a95d6032c311)
|
|
sincerely hope :-). Thanks elrond !
Jeremy.
(This used to be commit 0d59e8c6bf49e06f11b386f9d805474771365f52)
|
|
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)
|
|
and if you have unix realname=yes, you get the gecos name when locking the
station.
J.F.
(This used to be commit b5ad24ae0b15643df5832e2369fb4e43c98a1359)
|
|
J.F.
(This used to be commit 53aff484a6a37c83fd2e21d48fd1a5fcbad2f511)
|
|
(This used to be commit 70dcc791b45ac64fc536ef449e4e6b53b2b68fd4)
|
|
(This used to be commit 2a3c994a96dc96f379c4cffbcc3ca314c3d6d292)
|
|
(This used to be commit e13089b040d5df4e611a120ec7fce20757dc196a)
|
|
(This used to be commit 6b888d600d95e2595c3f79494edcc55e88e2980d)
|
|
(This used to be commit 2f056c2aadd2e16d89b66aabd1c166ab8d5abd76)
|
|
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)
|
|
so the same parser generator can be uses for cifs and rpc
(This used to be commit c7829fa0d87081d9b3f33468527583e3b763916b)
|
|
not just undercut work in progress, thank you.
(This used to be commit 86d440a88c948727bfcfedc694c52c58f9687d8b)
|
|
to make "printer driver file" a share parameter. This fits better with
the new NT printing subsystem.
Jeremy.
(This used to be commit 7afb68461f3938a647a6c48689293af8ed36ccb7)
|
|
Jeremy.
(This used to be commit b0242080fe464e71815431559fe54d109e0b92f2)
|
|
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)
|
|
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)
|
|
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)
|
|
register_vuid fills it with constructed info.
(This used to be commit b1889e4334012b1b2caa604b859da4271509fc87)
|
|
(This used to be commit 6de329f6bf9c26e132869cf43d4976d4881e285c)
|
|
(This used to be commit f3502d846c99c77b13ce75977f5dc79cc1a3506d)
|
|
- added autoconf test for HAVE_KERNEL_OPLOCKS_LINUX
(This used to be commit 0368f68529a9244663c199068e95d1a1d93152fa)
|
|
to prevent builkd breaking.
Jeremy.
(This used to be commit 6c7adeab0f92844ecefbcb923d0d4763d4c3eaa5)
|
|
Jeremy.
(This used to be commit 341d07c516865bdd9be99f98cd0754d12b25f9c0)
|
|
Removed ugly hack for NT printing.
Fixed up tdb parse stuff memory leaks.
Jeremy.
(This used to be commit 8ef41f31c53e14ad057d883810a1cd2301fede2a)
|
|
Jeremy.
(This used to be commit 34b63896ab1543936d6b9b382ef6727a161b6bf2)
|
|
(This used to be commit 1da9c5531a8e26dc63b31a27fa73e0932278acb4)
|
|
yipee!
the damn "device settings cannot be displayed" error is gone. We
needed to supply a default set of forms. I've added A4 and Letter by
default.
(This used to be commit 36f1189be1609490b6a825a2608b9cf5dc682656)
|
|
Jeremy.
(This used to be commit 0d681ea252e0cf7fdf57d316d2bfe7caa9b4fbf5)
|
|
"no driver" issue. I'm banging my head against comparitive packet
dumps right now...
Jeremy.
(This used to be commit 03cd4aa1443acd958593f37c61ff9c90a43c660b)
|
|
(This used to be commit 6506e6f47085beeaa6588a361a220ab21fc32aa6)
|
|
(This used to be commit 62d72dd67ba41b90fefc4308139cd488b3fcb3fa)
|
|
this uses 16 open file descriptors on 2 servers, with each server
accessed both via POSIX call and SMB calls. The idea is to test
NFS/SMB locking interaction.
Unfortunately the NT NFS locking implementation is so badly broken
that we don't have anything to test against
(This used to be commit 581498fe6b2efe44c1229dd12b9a6506b11747d0)
|
|
(This used to be commit 1c5f70821981e961b81c31f5c83bb56c08ef5018)
|
|
(This used to be commit 56ba49382fbdbe5672c3a72faaca21f20a53752b)
|
|
data
(This used to be commit c602b703a05b94748a890add751f47fc6b539c60)
|
|
buffer
(This used to be commit 417a88fc6a8406ad4244e8cc1317cb7163b07cc0)
|
|
(This used to be commit b152d75ea677d4025dcaaf3ae9009db0979dc402)
|