Trond Myklebust wrote:
> On Tue, 2009-08-25 at 14:39 -0400, Trond Myklebust wrote:
>   
>> On Tue, 2009-08-25 at 13:17 -0500, Tom Haynes wrote:
>>     
>>> Trond Myklebust wrote:
>>>       
>>>> On Tue, 2009-08-25 at 11:49 -0500, Tom Haynes wrote:
>>>>   
>>>>         
>>>>> With OpenSolaris NFSv3, there is no autonegotiation.  With NFSv4, we 
>>>>> support the autonegotiation
>>>>> as defined in the protocol.
>>>>>
>>>>> We just went through a regression with this algorithm.
>>>>>     
>>>>>           
>>>> NFSv4 also allows the server to change the list of supported security
>>>> flavours on the fly at any point in the namespace, and at any time. How
>>>> does OpenSolaris currently deal with this?
>>>>
>>>>   
>>>>         
>>> The client gets a WRONGSEC and then initiates auto-negotiation.
>>>
>>>       
>> Right, but are there any limits to that?
>>
>> Will it, for instance, allow process 1 to continue using auth_sys, while
>> process 2 switches to using krb5 on the same file?
>>     

 From *reading* the code,  I think process 1 is fat, dumb, and happy 
until it tries an
action which generates a WRONGSEC. At that point it will have to negotiate.


>> Should it recover in the case where the administrator suddenly removes
>> krb5 from the list, and replaces it with krb5i on all subdirectories
>> of ../../.. relative to your current working directory?
>>     
>
> Sorry. Let me be more specific...
>
> Say you have
>
> /foo sec=krb5,rw
>
> and the administrator adds a new rule
>
> /foo/bar sec=krb5i,rw
>
> Will your autonegotiator be able to recover processes that are working
> in /foo/bar/... without disturbing those working in /foo/baz/... ?
>
>   


I'll let someone who knows the client give the real response, but 
consider two
threads, one in /foo/baz and one in /foo/bar.

The one in /foo/baz will never get a WRONGSEC.

The one in /foo/bar may never get one either - depending on the server 
implementation.
i.e., the server has probably put the FSID in the FH. The client is 
handing back
what is probably a non-volatile FH and the server has to honor it. And 
the server
may have no clue that the FH is under a new mount point.

What happens if the client redrives a LOOKUP of the directory entry? It 
should
discover that the FHs no longer match and do some sort of recovery.






> Cheers
>   Trond
>
>   


Sounds like a great thing to test at the next BAT. :->




Reply via email to