NLM_GRANTED - Lock Granted
-
-
struct nlm_testargs {
netobj cookie;
bool exclusive;
struct nlm_lock alock;
};
-
-
struct nlm_res {
netobj cookie;
nlm_stat stat;
};
-
-
nlm_res
NLM_GRANTED(nlm_testargs) = 5;
This procedure is a call-back procedure from the server NLM running on the host where the file resides to the client.
- Note:
- With this procedure the server is the caller and the client the recipient.
This procedure call is made by the NLM server on the host where the file resides and the procedure is executed, and the return value generated on the client that issued the lock request. A client issuing
an NLM_LOCK procedure that blocks will be returned a status of "LCK_BLOCKED". At a later point, when the lock is granted, the server will issue an NLM_GRANTED procedure call to the client to indicate the lock has been granted. "exclusive" and "alock" will be the values in the original NLM_LOCK procedure. The client must not depend on "cookie" being the same in the NLM_LOCK and NLM_GRANTED procedures.
When the server makes the NLM_GRANTED procedure the lock requested by the client has been granted. The client must now give a return code to the NLM_GRANTED procedure. The client must return the nlm_res structure to the server with "stat" set to one of the following values:
- LCK_GRANTED
- Indicates that the procedure completed successfully.
- LCK_DENIED
- Indicates that the procedure failed, possibly due to internal resource constraints.
- LCK_DENIED_GRACE_PERIOD
Indicates that the procedure failed because the client host (the host making the lock request) has recently been rebooted and its NLM is re-establishing existing locks, and is not yet ready to accept normal service requests.
Contents | Next section | Index |