* @{
*/
+DBUS_PRIVATE_EXPORT
dbus_bool_t
_dbus_close (int fd,
DBusError *error);
+DBUS_PRIVATE_EXPORT
int _dbus_dup (int fd,
DBusError *error);
+DBUS_PRIVATE_EXPORT
int
_dbus_read (int fd,
DBusString *buffer,
dbus_bool_t abstract,
DBusError *error);
-int _dbus_listen_systemd_sockets (int **fd,
- DBusError *error);
+int _dbus_connect_exec (const char *path,
+ char *const argv[],
+ DBusError *error);
+
+int _dbus_listen_systemd_sockets (DBusSocket **fd,
+ DBusError *error);
dbus_bool_t _dbus_read_credentials (int client_fd,
DBusCredentials *credentials,
const char *launchd_env_var,
DBusError *error);
+DBUS_PRIVATE_EXPORT
+dbus_bool_t _dbus_lookup_user_bus (dbus_bool_t *supported,
+ DBusString *address,
+ DBusError *error);
+
/** Information about a UNIX user */
typedef struct DBusUserInfo DBusUserInfo;
/** Information about a UNIX group */
*/
struct DBusUserInfo
{
+ size_t refcount; /**< Reference count */
dbus_uid_t uid; /**< UID */
dbus_gid_t primary_gid; /**< GID */
dbus_gid_t *group_ids; /**< Groups IDs, *including* above primary group */
*/
struct DBusGroupInfo
{
+ size_t refcount; /**< Reference count */
dbus_gid_t gid; /**< GID */
char *groupname; /**< Group name */
};
DBusError *error);
void _dbus_group_info_free (DBusGroupInfo *info);
-dbus_uid_t _dbus_getuid (void);
+DBUS_PRIVATE_EXPORT
dbus_uid_t _dbus_geteuid (void);
dbus_bool_t _dbus_parse_uid (const DBusString *uid_str,
dbus_uid_t *uid);
+DBUS_PRIVATE_EXPORT
+void _dbus_close_all (void);
+
+dbus_bool_t _dbus_append_address_from_socket (DBusSocket fd,
+ DBusString *address,
+ DBusError *error);
+
+DBUS_PRIVATE_EXPORT
+void _dbus_fd_set_close_on_exec (int fd);
+
+typedef enum
+{
+ DBUS_FORCE_STDIN_NULL = (1 << 0),
+ DBUS_FORCE_STDOUT_NULL = (1 << 1),
+ DBUS_FORCE_STDERR_NULL = (1 << 2)
+} DBusEnsureStandardFdsFlags;
+
+DBUS_PRIVATE_EXPORT
+dbus_bool_t _dbus_ensure_standard_fds (DBusEnsureStandardFdsFlags flags,
+ const char **error_str_p);
+
+/** A UNIX signal handler */
+typedef void (* DBusSignalHandler) (int sig);
+
+void _dbus_set_signal_handler (int sig,
+ DBusSignalHandler handler);
+
/** @} */
DBUS_END_DECLS