]> CyberLeo.Net >> Repos - FreeBSD/releng/9.2.git/blob - usr.sbin/rpc.lockd/lockd_lock.h
- Copy stable/9 to releng/9.2 as part of the 9.2-RELEASE cycle.
[FreeBSD/releng/9.2.git] / usr.sbin / rpc.lockd / lockd_lock.h
1 /*      $NetBSD: lockd_lock.h,v 1.2 2000/06/09 14:00:54 fvdl Exp $      */
2 /*      $FreeBSD$ */
3
4 /* Headers and function declarations for file-locking utilities */
5
6 struct nlm4_holder *    testlock(struct nlm4_lock *lock, bool_t exclusive,
7     int flags);
8 enum nlm_stats  getlock(nlm4_lockargs *lckarg, struct svc_req *rqstp,
9     const int flags);
10 enum nlm_stats  unlock(nlm4_lock *lock, const int flags);
11 int     lock_answer(int pid, netobj *netcookie, int result, int *pid_p,
12     int version);
13
14 void notify(const char *hostname, const int state);
15
16 /* flags for testlock, getlock & unlock */
17 #define LOCK_ASYNC      0x01 /* async version (getlock only) */
18 #define LOCK_V4         0x02 /* v4 version */
19 #define LOCK_MON        0x04 /* monitored lock (getlock only) */
20 #define LOCK_CANCEL 0x08 /* cancel, not unlock request (unlock only) */
21
22 /* callbacks from lock_proc.c */
23 void    transmit_result(int, nlm_res *, struct sockaddr *);
24 void    transmit4_result(int, nlm4_res *, struct sockaddr *);
25 CLIENT  *get_client(struct sockaddr *, rpcvers_t);