1 /* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */ 2 /* dbus-sysdeps.c Wrappers around system/libc features (internal to D-BUS implementation) 3 * 4 * Copyright (C) 2002, 2003 Red Hat, Inc. 5 * Copyright (C) 2003 CodeFactory AB 6 * Copyright (C) 2005 Novell, Inc. 7 * 8 * Licensed under the Academic Free License version 2.1 9 * 10 * This program is free software; you can redistribute it and/or modify 11 * it under the terms of the GNU General Public License as published by 12 * the Free Software Foundation; either version 2 of the License, or 13 * (at your option) any later version. 14 * 15 * This program is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU General Public License for more details. 19 * 20 * You should have received a copy of the GNU General Public License 21 * along with this program; if not, write to the Free Software 22 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 23 * 24 */ 25 26 #ifndef DBUS_SYSDEPS_WIN_H 27 #define DBUS_SYSDEPS_WIN_H 28 29 extern void *_dbus_win_get_dll_hmodule (void); 30 #define WIN32_LEAN_AND_MEAN 31 32 #include "dbus-hash.h" 33 #include "dbus-string.h" 34 #include <ctype.h> 35 #include <malloc.h> 36 #include <windows.h> 37 #undef interface 38 39 #define DBUS_CONSOLE_DIR "/var/run/console/" 40 41 42 void _dbus_win_set_errno (int err); 43 DBUS_PRIVATE_EXPORT 44 const char* _dbus_win_error_from_last_error (void); 45 46 dbus_bool_t _dbus_win_startup_winsock (void); 47 void _dbus_win_warn_win_error (const char *message, 48 unsigned long code); 49 50 DBUS_PRIVATE_EXPORT 51 char * _dbus_win_error_string (int error_number); 52 DBUS_PRIVATE_EXPORT 53 void _dbus_win_free_error_string (char *string); 54 55 extern const char* _dbus_lm_strerror (int error_number); 56 57 58 dbus_bool_t _dbus_win_account_to_sid (const wchar_t *waccount, 59 void **ppsid, 60 DBusError *error); 61 62 dbus_bool_t 63 _dbus_win32_sid_to_name_and_domain (dbus_uid_t uid, 64 wchar_t **wname, 65 wchar_t **wdomain, 66 DBusError *error); 67 68 69 /* Don't define DBUS_CONSOLE_DIR on Win32 */ 70 71 wchar_t *_dbus_win_utf8_to_utf16 (const char *str, 72 DBusError *error); 73 char *_dbus_win_utf16_to_utf8 (const wchar_t *str, 74 DBusError *error); 75 76 DBUS_PRIVATE_EXPORT 77 void _dbus_win_set_error_from_win_error (DBusError *error, int code); 78 79 dbus_bool_t 80 _dbus_win_sid_to_name_and_domain (dbus_uid_t uid, 81 wchar_t **wname, 82 wchar_t **wdomain, 83 DBusError *error); 84 85 DBUS_PRIVATE_EXPORT 86 dbus_bool_t _dbus_get_install_root (DBusString *str); 87 88 void _dbus_threads_windows_init_global (void); 89 void _dbus_threads_windows_ensure_ctor_linked (void); 90 91 DBUS_PRIVATE_EXPORT 92 dbus_bool_t _dbus_getsid(char **sid, dbus_pid_t process_id); 93 #endif 94 95 /** @} end of sysdeps-win.h */ 96