user auth patches
Ralf Habacker
ralf.habacker at freenet.de
Thu Jun 14 00:26:31 PDT 2007
Ralf Habacker schrieb:
> Havoc Pennington schrieb:
>> Hi,
>>
>> abstract the user auth a bit more and allow there to be no unix user.
>>
>> The Windows port is broken for the moment, but it should now be possible
>> to delete all the code for emulating dbus_uid_t/dbus_gid_t on Windows.
>> If it isn't let me know where it's still needed.
> dbus-sysdeps-unix.h should not be included in windows, but it is
> included in dbus-userdb.c and dbus-userdb-util.c. Should these files
> are completly removed from the windows build ?
>
If I do so, I have to readd the following structs to dbus-sysdeps-win.h
typedef struct {
int uid;
char *username;
int n_group_ids;
dbus_gid_t *group_ids;
int primary_gid;
char *homedir;
} DBusUserInfo;
typedef struct {
int gid;
char *groupname;
} DBusGroupInfo;
typedef struct DBusCredentials{
int uid;
int gid;
int pid;
} DBusCredentials;
libdbus could the be build, bus dbus-daemon complains about many missing
symbols (see below) Should they all have to be ported ? Why need I _unix
functions on windows ? Are there portable functions, which could be
used by unix and windows to avoid duplicating code ? I thought that
files like config-parser.c and dbus-transport.c should only use
platform independent abstractions.
------ Erstellen gestartet: Projekt: dbus-daemon, Konfiguration: Debug
Win32 ------
Verknüpfen...
config-parser.obj : error LNK2019: Verweis auf nicht aufgelöstes
externes Symbol "__dbus_parse_unix_group_from_config" in Funktion
"_start_busconfig_child".
config-parser.obj : error LNK2019: Verweis auf nicht aufgelöstes
externes Symbol "__dbus_parse_unix_user_from_config" in Funktion
"_start_busconfig_child".
connection.obj : error LNK2019: Verweis auf nicht aufgelöstes externes
Symbol "__dbus_unix_groups_from_uid" in Funktion
"_bus_connection_get_unix_groups".
policy.obj : error LNK2001: Nicht aufgelöstes externes Symbol
"__dbus_unix_groups_from_uid".
policy.obj : error LNK2019: Verweis auf nicht aufgelöstes externes
Symbol "__dbus_unix_user_is_at_console" in Funktion
"_bus_policy_create_client_policy".
policy.obj : error LNK2019: Verweis auf nicht aufgelöstes externes
Symbol "__dbus_unix_user_is_process_owner" in Funktion
"_bus_policy_allow_unix_user".
policy.obj : error LNK2019: Verweis auf nicht aufgelöstes externes
Symbol "__dbus_windows_user_is_process_owner" in Funktion
"_bus_policy_allow_windows_user".
dbus-1.lib(dbus-threads.obj) : error LNK2001: Nicht aufgelöstes externes
Symbol "__dbus_lock_system_users".
dbus-1.lib(dbus-transport.obj) : error LNK2019: Verweis auf nicht
aufgelöstes externes Symbol "__dbus_credentials_unref" in Funktion
"__dbus_transport_init_base".
dbus-1.lib(dbus-auth.obj) : error LNK2001: Nicht aufgelöstes externes
Symbol "__dbus_credentials_unref".
dbus-1.lib(dbus-transport.obj) : error LNK2019: Verweis auf nicht
aufgelöstes externes Symbol "__dbus_credentials_new" in Funktion
"__dbus_transport_init_base".
dbus-1.lib(dbus-auth.obj) : error LNK2001: Nicht aufgelöstes externes
Symbol "__dbus_credentials_new".
dbus-1.lib(dbus-transport.obj) : error LNK2019: Verweis auf nicht
aufgelöstes externes Symbol "__dbus_credentials_include" in Funktion
"__dbus_transport_get_is_authenticated".
dbus-1.lib(dbus-transport.obj) : error LNK2019: Verweis auf nicht
aufgelöstes externes Symbol "__dbus_credentials_get_unix_uid" in
Funktion "_auth_via_unix_user_function".
dbus-1.lib(dbus-transport.obj) : error LNK2019: Verweis auf nicht
aufgelöstes externes Symbol "__dbus_credentials_get_windows_sid" in
Funktion "_auth_via_windows_user_function".
dbus-1.lib(dbus-transport.obj) : error LNK2019: Verweis auf nicht
aufgelöstes externes Symbol "__dbus_credentials_same_user" in Funktion
"_auth_via_default_rules".
dbus-1.lib(dbus-transport.obj) : error LNK2019: Verweis auf nicht
aufgelöstes externes Symbol
"__dbus_credentials_new_from_current_process" in Funktion
"_auth_via_default_rules".
dbus-1.lib(dbus-transport.obj) : error LNK2019: Verweis auf nicht
aufgelöstes externes Symbol "__dbus_credentials_are_anonymous" in
Funktion "__dbus_transport_get_is_anonymous".
dbus-1.lib(dbus-auth.obj) : error LNK2001: Nicht aufgelöstes externes
Symbol "__dbus_credentials_are_anonymous".
dbus-1.lib(dbus-transport.obj) : error LNK2019: Verweis auf nicht
aufgelöstes externes Symbol "__dbus_credentials_get_unix_pid" in
Funktion "__dbus_transport_get_unix_process_id".
dbus-1.lib(dbus-transport-socket.obj) : error LNK2019: Verweis auf nicht
aufgelöstes externes Symbol "__dbus_read_credentials_socket" in Funktion
"_exchange_credentials".
dbus-1.lib(dbus-transport-socket.obj) : error LNK2019: Verweis auf nicht
aufgelöstes externes Symbol "__dbus_send_credentials_socket" in Funktion
"_exchange_credentials".
dbus-1.lib(dbus-auth.obj) : error LNK2019: Verweis auf nicht aufgelöstes
externes Symbol "__dbus_credentials_add_from_username" in Funktion
"_sha1_handle_first_client_response".
dbus-1.lib(dbus-auth.obj) : error LNK2019: Verweis auf nicht aufgelöstes
externes Symbol "__dbus_credentials_add_credential" in Funktion
"_sha1_handle_second_client_response".
dbus-1.lib(dbus-auth.obj) : error LNK2019: Verweis auf nicht aufgelöstes
externes Symbol "__dbus_credentials_add_credentials" in Funktion
"_sha1_handle_second_client_response".
dbus-1.lib(dbus-auth.obj) : error LNK2019: Verweis auf nicht aufgelöstes
externes Symbol "__dbus_username_from_current_process" in Funktion
"_handle_client_initial_response_cookie_sha1_mech".
dbus-1.lib(dbus-keyring.obj) : error LNK2001: Nicht aufgelöstes externes
Symbol "__dbus_username_from_current_process".
dbus-1.lib(dbus-auth.obj) : error LNK2019: Verweis auf nicht aufgelöstes
externes Symbol "__dbus_credentials_are_superset" in Funktion
"_handle_server_data_external_mech".
dbus-1.lib(dbus-auth.obj) : error LNK2019: Verweis auf nicht aufgelöstes
externes Symbol "__dbus_credentials_parse_and_add_desired" in Funktion
"_handle_server_data_external_mech".
dbus-1.lib(dbus-auth.obj) : error LNK2019: Verweis auf nicht aufgelöstes
externes Symbol "__dbus_credentials_clear" in Funktion
"_handle_server_data_external_mech".
dbus-1.lib(dbus-auth.obj) : error LNK2019: Verweis auf nicht aufgelöstes
externes Symbol "__dbus_append_desired_identity" in Funktion
"_handle_client_initial_response_external_mech".
dbus-1.lib(dbus-auth.obj) : error LNK2019: Verweis auf nicht aufgelöstes
externes Symbol "__dbus_credentials_are_empty" in Funktion
"__dbus_auth_get_identity".
dbus-1.lib(dbus-keyring.obj) : error LNK2019: Verweis auf nicht
aufgelöstes externes Symbol "__dbus_homedir_from_username" in Funktion
"__dbus_keyring_new_homedir".
dbus-1.lib(dbus-keyring.obj) : error LNK2019: Verweis auf nicht
aufgelöstes externes Symbol "__dbus_homedir_from_current_process" in
Funktion "__dbus_keyring_new_homedir".
F:\daten\windbus\cvs-commit-3-msvc-build\bin\Debug\dbus-daemon.exe :
fatal error LNK1120: 29 nicht aufgelöste externe Verweise.
Das Buildprotokoll wurde unter
"file://f:\daten\windbus\cvs-commit-3-msvc-build\bus\dbus-daemon.dir\Debug\BuildLog.htm"
gespeichert.
dbus-daemon - 35 Fehler, 0 Warnung(en)
Ralf
More information about the dbus
mailing list