diff options
Diffstat (limited to 'c_src/include/linux/key.h')
-rw-r--r-- | c_src/include/linux/key.h | 42 |
1 files changed, 0 insertions, 42 deletions
diff --git a/c_src/include/linux/key.h b/c_src/include/linux/key.h deleted file mode 100644 index cc6859a9..00000000 --- a/c_src/include/linux/key.h +++ /dev/null @@ -1,42 +0,0 @@ -#ifndef _LINUX_KEY_H -#define _LINUX_KEY_H - -#include <linux/types.h> -#include <linux/atomic.h> -#include <keyutils.h> - -struct user_key_payload { - size_t datalen; /* length of this data */ - char data[0]; /* actual data */ -}; - -struct key { - atomic_t usage; /* number of references */ - key_serial_t serial; /* key serial number */ - struct rw_semaphore sem; /* change vs change sem */ - struct user_key_payload payload; -}; - -static inline const struct user_key_payload *user_key_payload(const struct key *key) -{ - return &key->payload; -} - -static inline void key_put(struct key *key) -{ - if (atomic_dec_and_test(&key->usage)) - free(key); -} - -static inline struct key *__key_get(struct key *key) -{ - atomic_inc(&key->usage); - return key; -} - -static inline struct key *key_get(struct key *key) -{ - return key ? __key_get(key) : key; -} - -#endif /* _LINUX_KEY_H */ |