summaryrefslogtreecommitdiffstats
path: root/src/ccapi/server/ccs_lock.h
diff options
context:
space:
mode:
authorAlexandra Ellwood <lxs@mit.edu>2007-06-12 21:07:16 +0000
committerAlexandra Ellwood <lxs@mit.edu>2007-06-12 21:07:16 +0000
commit05b0fe74bb6eb10a49333d42f9f1677235863f85 (patch)
treebbf3ca5514c49c0ac7d4f70073cb3208607cc05d /src/ccapi/server/ccs_lock.h
parentfd7e3b884d0fa19a4d9b1f1965e656b62beb7351 (diff)
downloadkrb5-05b0fe74bb6eb10a49333d42f9f1677235863f85.tar.gz
krb5-05b0fe74bb6eb10a49333d42f9f1677235863f85.tar.xz
krb5-05b0fe74bb6eb10a49333d42f9f1677235863f85.zip
Add advisory locking to CCAPI
Added code to trash client crashes. Reorganized server launch to make it easier to implement platform specific code. ticket: new status: open git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@19573 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/ccapi/server/ccs_lock.h')
-rw-r--r--src/ccapi/server/ccs_lock.h23
1 files changed, 13 insertions, 10 deletions
diff --git a/src/ccapi/server/ccs_lock.h b/src/ccapi/server/ccs_lock.h
index 197f5d50d..bed0a9eab 100644
--- a/src/ccapi/server/ccs_lock.h
+++ b/src/ccapi/server/ccs_lock.h
@@ -29,14 +29,17 @@
#include "ccs_types.h"
-cc_int32 ccs_lock_new (ccs_lock_t *out_lock,
- cc_uint32 in_type,
- cc_int32 in_invalid_object_err,
- ccs_pipe_t in_client_pipe,
- ccs_pipe_t in_reply_pipe);
+cc_int32 ccs_lock_new (ccs_lock_t *out_lock,
+ cc_uint32 in_type,
+ cc_int32 in_invalid_object_err,
+ ccs_pipe_t in_client_pipe,
+ ccs_pipe_t in_reply_pipe,
+ ccs_lock_state_t in_lock_state_owner);
cc_int32 ccs_lock_release (ccs_lock_t io_lock);
+cc_int32 ccs_lock_invalidate (ccs_lock_t io_lock);
+
cc_int32 ccs_lock_grant_lock (ccs_lock_t io_lock);
cc_uint32 ccs_lock_is_pending (ccs_lock_t in_lock,
@@ -51,11 +54,11 @@ cc_int32 ccs_lock_is_read_lock (ccs_lock_t in_lock,
cc_int32 ccs_lock_is_write_lock (ccs_lock_t in_lock,
cc_uint32 *out_is_write_lock);
-cc_int32 ccs_lock_is_for_client (ccs_lock_t in_lock,
- ccs_pipe_t in_client_pipe,
- cc_uint32 *out_is_for_client);
+cc_int32 ccs_lock_is_for_client_pipe (ccs_lock_t in_lock,
+ ccs_pipe_t in_client_pipe,
+ cc_uint32 *out_is_for_client_pipe);
-cc_int32 ccs_lock_client (ccs_lock_t in_lock,
- ccs_pipe_t *out_client_pipe);
+cc_int32 ccs_lock_client_pipe (ccs_lock_t in_lock,
+ ccs_pipe_t *out_client_pipe);
#endif /* CCS_LOCK_H */