/* Generated by ./xlat/gen.sh from ./xlat/key_reqkeys.in; do not edit. */
#if !(defined(KEY_REQKEY_DEFL_NO_CHANGE) || (defined(HAVE_DECL_KEY_REQKEY_DEFL_NO_CHANGE) && HAVE_DECL_KEY_REQKEY_DEFL_NO_CHANGE))
# define KEY_REQKEY_DEFL_NO_CHANGE -1
#endif
#if !(defined(KEY_REQKEY_DEFL_DEFAULT) || (defined(HAVE_DECL_KEY_REQKEY_DEFL_DEFAULT) && HAVE_DECL_KEY_REQKEY_DEFL_DEFAULT))
# define KEY_REQKEY_DEFL_DEFAULT 0
#endif
#if !(defined(KEY_REQKEY_DEFL_THREAD_KEYRING) || (defined(HAVE_DECL_KEY_REQKEY_DEFL_THREAD_KEYRING) && HAVE_DECL_KEY_REQKEY_DEFL_THREAD_KEYRING))
# define KEY_REQKEY_DEFL_THREAD_KEYRING 1
#endif
#if !(defined(KEY_REQKEY_DEFL_PROCESS_KEYRING) || (defined(HAVE_DECL_KEY_REQKEY_DEFL_PROCESS_KEYRING) && HAVE_DECL_KEY_REQKEY_DEFL_PROCESS_KEYRING))
# define KEY_REQKEY_DEFL_PROCESS_KEYRING 2
#endif
#if !(defined(KEY_REQKEY_DEFL_SESSION_KEYRING) || (defined(HAVE_DECL_KEY_REQKEY_DEFL_SESSION_KEYRING) && HAVE_DECL_KEY_REQKEY_DEFL_SESSION_KEYRING))
# define KEY_REQKEY_DEFL_SESSION_KEYRING 3
#endif
#if !(defined(KEY_REQKEY_DEFL_USER_KEYRING) || (defined(HAVE_DECL_KEY_REQKEY_DEFL_USER_KEYRING) && HAVE_DECL_KEY_REQKEY_DEFL_USER_KEYRING))
# define KEY_REQKEY_DEFL_USER_KEYRING 4
#endif
#if !(defined(KEY_REQKEY_DEFL_USER_SESSION_KEYRING) || (defined(HAVE_DECL_KEY_REQKEY_DEFL_USER_SESSION_KEYRING) && HAVE_DECL_KEY_REQKEY_DEFL_USER_SESSION_KEYRING))
# define KEY_REQKEY_DEFL_USER_SESSION_KEYRING 5
#endif
#if !(defined(KEY_REQKEY_DEFL_GROUP_KEYRING) || (defined(HAVE_DECL_KEY_REQKEY_DEFL_GROUP_KEYRING) && HAVE_DECL_KEY_REQKEY_DEFL_GROUP_KEYRING))
# define KEY_REQKEY_DEFL_GROUP_KEYRING 6
#endif
#if !(defined(KEY_REQKEY_DEFL_REQUESTOR_KEYRING) || (defined(HAVE_DECL_KEY_REQKEY_DEFL_REQUESTOR_KEYRING) && HAVE_DECL_KEY_REQKEY_DEFL_REQUESTOR_KEYRING))
# define KEY_REQKEY_DEFL_REQUESTOR_KEYRING 7
#endif

#ifdef IN_MPERS

# error static const struct xlat key_reqkeys in mpers mode

#else

static
const struct xlat key_reqkeys[] = {
 XLAT(KEY_REQKEY_DEFL_NO_CHANGE),
 XLAT(KEY_REQKEY_DEFL_DEFAULT),
 XLAT(KEY_REQKEY_DEFL_THREAD_KEYRING),
 XLAT(KEY_REQKEY_DEFL_PROCESS_KEYRING),
 XLAT(KEY_REQKEY_DEFL_SESSION_KEYRING),
 XLAT(KEY_REQKEY_DEFL_USER_KEYRING),
 XLAT(KEY_REQKEY_DEFL_USER_SESSION_KEYRING),
 XLAT(KEY_REQKEY_DEFL_GROUP_KEYRING),
 XLAT(KEY_REQKEY_DEFL_REQUESTOR_KEYRING),
 XLAT_END
};

#endif /* !IN_MPERS */
