From e4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 10 Apr 2024 22:34:10 +0200 Subject: Adding upstream version 4.2.2. Signed-off-by: Daniel Baumann --- wsutil/privileges.h | 66 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 wsutil/privileges.h (limited to 'wsutil/privileges.h') diff --git a/wsutil/privileges.h b/wsutil/privileges.h new file mode 100644 index 00000000..c936228c --- /dev/null +++ b/wsutil/privileges.h @@ -0,0 +1,66 @@ +/** @file + * Declarations of routines for handling privileges. + * + * Wireshark - Network traffic analyzer + * By Gerald Combs + * Copyright 2006 Gerald Combs + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#ifndef __PRIVILEGES_H__ +#define __PRIVILEGES_H__ + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * Called when the program starts, to enable security features and save + * whatever credential information we'll need later. + */ +WS_DLL_PUBLIC void init_process_policies(void); + +/** + * Was this program started with special privileges? get_credential_info() + * MUST be called before calling this. + * @return true if the program was started with special privileges, + * false otherwise. + */ +WS_DLL_PUBLIC bool started_with_special_privs(void); + +/** + * Is this program running with special privileges? get_credential_info() + * MUST be called before calling this. + * @return true if the program is running with special privileges, + * false otherwise. + */ +WS_DLL_PUBLIC bool running_with_special_privs(void); + +/** + * Permanently relinquish special privileges. get_credential_info() + * MUST be called before calling this. + */ +WS_DLL_PUBLIC void relinquish_special_privs_perm(void); + +/** + * Get the current username. String must be g_free()d after use. + * @return A freshly g_alloc()ed string containing the username, + * or "UNKNOWN" on failure. + */ +WS_DLL_PUBLIC char *get_cur_username(void); + +/** + * Get the current group. String must be g_free()d after use. + * @return A freshly g_alloc()ed string containing the group, + * or "UNKNOWN" on failure. + */ +WS_DLL_PUBLIC char *get_cur_groupname(void); + +#ifdef __cplusplus +} +#endif /* __cplusplus */ + +#endif /* __PRIVILEGES_H__ */ -- cgit v1.2.3