DEVEL15-windows-callback-handling-20090614
authorJeffrey Altman <jaltman@secure-endpoints.com>
Fri, 19 Jun 2009 04:13:30 +0000 (04:13 +0000)
committerJeffrey Altman <jaltman@secure-endpoints.com>
Fri, 19 Jun 2009 04:13:30 +0000 (04:13 +0000)
commit50370ca427f353b157d2caa972fb6eb6155a8108
treebe3c54b1b3ed7882dd3105472d3d45a58232a92f
parent856305172948253be7e3501ac30f1832b1c759fe
DEVEL15-windows-callback-handling-20090614

LICENSE MIT

Turn SRXAFSCB_InitCallBackState3() into the primary function for
processing InitCallBackStateX RPCs.  InitCallBackState3 accepts an
optional server uuid which can be used instead of the IP address
to locate a matching server object.  If the RPC comes from a server
that we know of, we can restrict the calback state initialization
to cm_scache_t objects on that file server.  If the request comes
from a server that we know nothing about and a uuid was specified,
we can ignore it.

During callback revocation, make use of the cell associated with
the server to restrict the revocation to cm_scache_t objects in
the one cell.  This is especially important for readonly volume
callbacks since volume ids are shared across multiple cells.

Add a missing case where the cm_volume_t cbExpiresRO time should
be set to the cm_scache_t cbExpires time.

(cherry picked from commit a79ce67d7a52a99c10192a92c66a7e10500770bf)
src/WINNT/afsd/cm_callback.c