19 May, 2011
2 commits
-
Change idmap key name from cifs.cifs_idmap to cifs.idmap.
Removed unused structure wksidarr and function match_sid().
Handle errors correctly in function init_cifs().Signed-off-by: Shirish Pargaonkar
Reviewed-by: Jeff Layton
Signed-off-by: Steve French -
rb tree search and insertion routines.
A SID which needs to be mapped, is looked up in one of the rb trees
depending on whether SID is either owner or group SID.
If found in the tree, a (mapped) id from that node is assigned to
uid or gid as appropriate. If unmapped, an upcall is attempted to
map the SID to an id. If upcall is successful, node is marked as
mapped. If upcall fails, node stays marked as unmapped and a mapping
is attempted again only after an arbitrary time period has passed.To map a SID, which can be either a Owner SID or a Group SID, key
description starts with the string "os" or "gs" followed by SID converted
to a string. Without "os" or "gs", cifs.upcall does not know whether
SID needs to be mapped to either an uid or a gid.Nodes in rb tree have fields to prevent multiple upcalls for
a SID. Searching, adding, and removing nodes is done within global locks.
Whenever a node is either found or inserted in a tree, a reference
is taken on that node.
Shrinker routine prunes a node if it has expired but does not prune
an expired node if its refcount is not zero (i.e. sid/id of that node
is_being/will_be accessed).
Thus a node, if its SID needs to be mapped by making an upcall,
can safely stay and its fields accessed without shrinker pruning it.
A reference (refcount) is put on the node without holding the spinlock
but a reference is get on the node by holding the spinlock.Every time an existing mapped node is accessed or mapping is attempted,
its timestamp is updated to prevent it from getting erased or a
to prevent multiple unnecessary repeat mapping retries respectively.For now, cifs.upcall is only used to map a SID to an id (uid or gid) but
it would be used to obtain an SID for an id.Signed-off-by: Shirish Pargaonkar
Reviewed-by: Jeff Layton
Signed-off-by: Steve French
07 Dec, 2010
1 commit
-
Some of the code under CONFIG_CIFS_ACL is dependent upon code under
CONFIG_CIFS_EXPERIMENTAL, but the Kconfig options don't reflect that
dependency. Move more of the ACL code out from under
CONFIG_CIFS_EXPERIMENTAL and under CONFIG_CIFS_ACL.Also move find_readable_file out from other any sort of Kconfig
option and make it a function normally compiled in.Reported-and-Acked-by: Randy Dunlap
Signed-off-by: Jeff Layton
Signed-off-by: Steve French
10 Apr, 2008
1 commit
-
Signed-off-by: Shirish Pargaonkar
Signed-off-by: Steve French
06 Nov, 2007
1 commit
-
Acked-by: Shirish Pargaonkar
Signed-off-by: Steve French
26 Oct, 2007
1 commit
-
Also fixes typo, build break
Signed-off-by: Steve French
24 Oct, 2007
1 commit
-
CC: Shirish Pargaonkar
Signed-off-by: Steve French
18 Oct, 2007
1 commit
-
Signed-off-by: Steve French
17 Oct, 2007
1 commit
-
Signed-off-by: Steve French
15 Oct, 2007
1 commit
-
Signed-off-by: Cyrill Gorcunov
Signed-off-by: Steve French
12 Oct, 2007
1 commit
-
Signed-off-by: Shirish Pargaonkar
Signed-off-by: Steve French
04 Oct, 2007
1 commit
-
Signed-off-by: Shirish Pargaonkar
Signed-off-by: Steve French
02 Oct, 2007
1 commit
-
num_auth is really num_subauth in ACL terminology
Signed-off-by: Steve French
26 Sep, 2007
1 commit
-
Signed-off-by: Steve French
25 Sep, 2007
1 commit
-
Add code to be able to dump CIFS ACL information
when Query Posix ACL with cifsacl mount parm enabled.Signed-off-by: Shirish Pargoankar
Signed-off-by: Steve French
29 Sep, 2006
1 commit
-
Most cases of the ones found by Shaggy by
"make namespacecheck"
could be removed or made staticAck: Dave Kleikamp
Signed-off-by: Steve French
14 Jan, 2006
1 commit
-
Fix Samba bugzilla bug 3301
In share mode encrypted password must be sent on tree connection (in our
case only the NTLM password is sent, not the older LANMAN one).Signed-off-by: Steve French
09 Jan, 2006
1 commit
-
Signed-off-by: Steve French
02 Dec, 2005
1 commit
-
Signed-off-by: Steve French