win32 dbus_connection_get_unix_user() problem

Ralf Habacker ralf.habacker at freenet.de
Sun Mar 11 12:53:53 PDT 2007


Havoc Pennington schrieb:
> <snip>

> What I'm saying is, the config file already supports a number of 
> unrelated options for when a policy applies, such as unix user, unix 
> group, bus name owned, etc. Just add also windows sid as something the 
> file supports. So my suggestion is something like:
>
>   parse_policy() {
>     parse_unix_user_attribute()
>     parse_unix_group_attribute()
>     parse_windows_sid_attribute()
>     parse_name_owned_attribute()
>     return policy;
>   }
>
> Some of the attributes will not make sense on some platforms. On unix 
> the windows sid attribute will always be empty as if it were not 
> specified, and on windows the unix attributes will always be empty as 
> if they were not specified.
> In any case, if you think this is a bad way to do it (it might turn 
> out to be once you try it), then feel free to come up with another 
> one. But I've outlined the properties it has to have (no unix 
> emulation on windows in a way that leaks into public API/config, no 
> process-specific made-up integers sent over the wire, and no #ifdef 
> hell that will be unmaintainable)
I have a question about the current implementation: Are you aware that 
dbus_uid_t and dbus_gid_t are unix specific and could'nt be reused on 
windows without breaking many places in the current code ?
As far as I have learned you may answer, yes please add additional 
windows specific user and gid types and rewrite the related parts for 
windows.

Are you aware that this means to rewrite whole parts of the user/group 
logic and all references of user related functions as shown below  ?

Wouldn't here a platform independent *local* api be the better way to 
avoid redundant logic and many duplicated stuff ?

Ralf


-- uid occurences

  F:\daten\windbus\cvs-commit2\dbus\dbus-auth.c(714):                 
DBUS_AUTH_NAME (auth), auth->desired_identity.uid);
  F:\daten\windbus\cvs-commit2\dbus\dbus-auth.c(969):  if 
(auth->credentials.uid == DBUS_UID_UNSET)
  F:\daten\windbus\cvs-commit2\dbus\dbus-auth.c(1017):      
auth->desired_identity.uid = auth->credentials.uid;
  
F:\daten\windbus\cvs-commit2\dbus\dbus-auth.c(1022):                            
&auth->desired_identity.uid))
  F:\daten\windbus\cvs-commit2\dbus\dbus-auth.c(1024):          
_dbus_verbose ("%s: could not get credentials from uid string\n",
  F:\daten\windbus\cvs-commit2\dbus\dbus-auth.c(1030):  if 
(auth->desired_identity.uid == DBUS_UID_UNSET)
  
F:\daten\windbus\cvs-commit2\dbus\dbus-auth.c(1048):                     
auth->desired_identity.uid,
  
F:\daten\windbus\cvs-commit2\dbus\dbus-auth.c(1049):                     
auth->credentials.uid);
  F:\daten\windbus\cvs-commit2\dbus\dbus-auth.c(1052):      
auth->authorized_identity.uid = auth->desired_identity.uid;
  F:\daten\windbus\cvs-commit2\dbus\dbus-auth.c(1057):      
_dbus_verbose ("%s: credentials uid="DBUS_UID_FORMAT
  
F:\daten\windbus\cvs-commit2\dbus\dbus-auth.c(1059):                     
" do not allow uid="DBUS_UID_FORMAT
  
F:\daten\windbus\cvs-commit2\dbus\dbus-auth.c(1062):                     
auth->credentials.uid, auth->credentials.gid,
  
F:\daten\windbus\cvs-commit2\dbus\dbus-auth.c(1063):                     
auth->desired_identity.uid, auth->desired_identity.gid);
  F:\daten\windbus\cvs-commit2\dbus\dbus-bus.c(813):  dbus_uint32_t uid;
  
F:\daten\windbus\cvs-commit2\dbus\dbus-bus.c(859):                              
DBUS_TYPE_UINT32, &uid,
  F:\daten\windbus\cvs-commit2\dbus\dbus-bus.c(869):  return (unsigned 
long) uid;
  F:\daten\windbus\cvs-commit2\dbus\dbus-bus.c(901):  DBusString uid;
  F:\daten\windbus\cvs-commit2\dbus\dbus-bus.c(905):  _dbus_string_init 
(&uid);
  
F:\daten\windbus\cvs-commit2\dbus\dbus-bus.c(951):                              
DBUS_TYPE_STRING, &uid,
  F:\daten\windbus\cvs-commit2\dbus\dbus-bus.c(961):  return uid;
  F:\daten\windbus\cvs-commit2\dbus\dbus-connection.c(4766): * the uid 
is filled in.  Always returns #FALSE on non-UNIX platforms.
  F:\daten\windbus\cvs-commit2\dbus\dbus-connection.c(4781): * @param 
uid return location for the user ID
  F:\daten\windbus\cvs-commit2\dbus\dbus-connection.c(4782): * @returns 
#TRUE if uid is filled in with a valid user ID
  
F:\daten\windbus\cvs-commit2\dbus\dbus-connection.c(4786):                               
unsigned long  *uid)
  F:\daten\windbus\cvs-commit2\dbus\dbus-connection.c(4791):  
_dbus_return_val_if_fail (uid != NULL, FALSE);
  
F:\daten\windbus\cvs-commit2\dbus\dbus-connection.c(4799):                                            
uid);
  F:\daten\windbus\cvs-commit2\dbus\dbus-connection.c(4807): * Returns 
#TRUE if the uid is filled in.
  F:\daten\windbus\cvs-commit2\dbus\dbus-connection.c(4813): * @returns 
#TRUE if uid is filled in with a valid process ID
  F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.c(626):  
credentials->uid = DBUS_UID_UNSET;
  F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.c(642):  if 
(provided_credentials->uid == DBUS_UID_UNSET)
  F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.c(644):  else if 
(expected_credentials->uid == DBUS_UID_UNSET)
  F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.c(646):  else if 
(provided_credentials->uid == 0)
  F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.c(648):  else if 
(provided_credentials->uid == expected_credentials->uid)
  F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.c(754): * @param uid 
UID to fill in
  F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.c(759):                 
dbus_uid_t            *uid)
  F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.c(785):  *uid = val;
  F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.h(100):    char uid[128];
  F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.h(192):  dbus_uid_t 
uid; /**< user ID or DBUS_UID_UNSET */
  F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.h(222):  dbus_uid_t  
uid;            /**< UID */
  
F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.h(243):                                      
dbus_uid_t        uid,
  F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.h(407):  dbus_uid_t    
uid;   /**< User owning file */
  F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.h(431):dbus_bool_t 
_dbus_change_identity (unsigned long     uid,
  
F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.h(480):                             
dbus_uid_t        *uid);
  F:\daten\windbus\cvs-commit2\dbus\dbus-transport.c(166):  
transport->credentials.uid = -1;
  
F:\daten\windbus\cvs-commit2\dbus\dbus-transport.c(593):                                              
auth_identity.uid,
  
F:\daten\windbus\cvs-commit2\dbus\dbus-transport.c(601):                  
_dbus_verbose ("Client UID "DBUS_UID_FORMAT" authorized\n", 
auth_identity.uid);
  
F:\daten\windbus\cvs-commit2\dbus\dbus-transport.c(607):                                 
auth_identity.uid);
  
F:\daten\windbus\cvs-commit2\dbus\dbus-transport.c(624):                                 
auth_identity.uid, our_identity.uid);
  
F:\daten\windbus\cvs-commit2\dbus\dbus-transport.c(633):                                 
auth_identity.uid, our_identity.uid);
  F:\daten\windbus\cvs-commit2\dbus\dbus-transport.c(1026): * @param uid 
return location for the user ID
  F:\daten\windbus\cvs-commit2\dbus\dbus-transport.c(1027): * @returns 
#TRUE if uid is filled in with a valid user ID
  
F:\daten\windbus\cvs-commit2\dbus\dbus-transport.c(1031):                               
unsigned long *uid)
  F:\daten\windbus\cvs-commit2\dbus\dbus-transport.c(1035):  *uid = 
_DBUS_INT32_MAX; /* better than some root or system user in
  F:\daten\windbus\cvs-commit2\dbus\dbus-transport.c(1045):  if 
(auth_identity.uid != DBUS_UID_UNSET)
  F:\daten\windbus\cvs-commit2\dbus\dbus-transport.c(1047):      *uid = 
auth_identity.uid;
  F:\daten\windbus\cvs-commit2\dbus\dbus-transport.c(1059): * @returns 
#TRUE if uid is filled in with a valid process ID
  
F:\daten\windbus\cvs-commit2\dbus\dbus-transport.h(62):                                                           
unsigned long              *uid);
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(38): * @param uid 
UID of person to check
  
F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(43):_dbus_is_console_user 
(dbus_uid_t uid,
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(69):  if 
(_dbus_stat(&f, &st, NULL) && (st.uid == uid))
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(91):  info = 
_dbus_user_database_lookup (db, uid, NULL, error);
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(110): * @param 
uid the UID
  
F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(115):_dbus_credentials_from_uid 
(dbus_uid_t        uid,
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(129):  if 
(!_dbus_user_database_get_uid (db, uid,
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(136):  
_dbus_assert (info->uid == uid);
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(139):  
credentials->uid = info->uid;
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(151): * @param 
uid return location for UID
  
F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(156):                   
dbus_uid_t        *uid)
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(163):  if 
(creds.uid == DBUS_UID_UNSET)
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(166):  *uid = 
creds.uid;
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(359): * @param 
uid the UID
  
F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(365):_dbus_groups_from_uid 
(dbus_uid_t         uid,
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(383):  if 
(!_dbus_user_database_get_uid (db, uid,
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(390):  
_dbus_assert (info->uid == uid);
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(424):  dbus_uid_t 
uid;
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(434):  if 
(!_dbus_get_user_id (username, &uid))
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(435):    
_dbus_assert_not_reached ("didn't get uid");
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(438):  if 
(!_dbus_groups_from_uid (uid, &group_ids, &n_group_ids))
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(90): * Looks up a uid 
or username in the user database.  Only one of name
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(96): * @param uid the 
user ID or #DBUS_UID_UNSET
  
F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(103):                            
dbus_uid_t        uid,
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(110):  _dbus_assert 
(uid != DBUS_UID_UNSET || username != NULL);
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(113):  if (uid == 
DBUS_UID_UNSET)
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(118):        uid = n;
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(122):  if (uid != 
DBUS_UID_UNSET)
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(123):    info = 
_dbus_hash_table_lookup_ulong (db->users, uid);
  
F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(130):                     
info->uid);
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(138):      if (uid != 
DBUS_UID_UNSET)
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(140):               uid);
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(152):      if (uid != 
DBUS_UID_UNSET)
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(154):          if 
(!_dbus_user_info_fill_uid (info, uid, error))
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(172):      uid = 
DBUS_UID_UNSET;
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(176):      if 
(!_dbus_hash_table_insert_ulong (db->users, info->uid, info))
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(187):          
_dbus_hash_table_remove_ulong (db->users, info->uid);
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(444):  
credentials->uid = info->uid;
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(558): * @param uid the 
user ID
  
F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(565):                             
dbus_uid_t           uid,
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(569):  *info = 
_dbus_user_database_lookup (db, uid, NULL, error);
  
F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.h(56):                                                     
dbus_uid_t            uid,
  
F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.h(73):                                                 
dbus_uid_t        uid,
  
F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.h(94):                                                 
dbus_uid_t        *uid);
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.h(101):dbus_bool_t 
_dbus_groups_from_uid        (dbus_uid_t            uid,
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.h(104):dbus_bool_t 
_dbus_is_console_user               (dbus_uid_t         uid,
  F:\daten\windbus\cvs-commit2\bus\bus.c(665):          creds.uid < 0 ||
  F:\daten\windbus\cvs-commit2\bus\bus.c(766):      if 
(!_dbus_change_identity (creds.uid, creds.gid, error))
  F:\daten\windbus\cvs-commit2\bus\bus.c(1000):                        
unsigned long uid)
  
F:\daten\windbus\cvs-commit2\bus\bus.c(1003):                                
uid);
  
F:\daten\windbus\cvs-commit2\bus\bus.h(89):                                                                  
unsigned long     uid);
  F:\daten\windbus\cvs-commit2\bus\config-parser.c(1474):          
rule->d.user.uid = DBUS_UID_UNSET;
  F:\daten\windbus\cvs-commit2\bus\config-parser.c(1479):          
dbus_uid_t uid;
  F:\daten\windbus\cvs-commit2\bus\config-parser.c(1483):          if 
(_dbus_get_user_id (&username, &uid))
  F:\daten\windbus\cvs-commit2\bus\config-parser.c(1489):              
rule->d.user.uid = uid;
  
F:\daten\windbus\cvs-commit2\bus\connection.c(111):                         
dbus_uid_t      uid)
  
F:\daten\windbus\cvs-commit2\bus\connection.c(119):                                       
uid);
  
F:\daten\windbus\cvs-commit2\bus\connection.c(128):                            
dbus_uid_t      uid,
  F:\daten\windbus\cvs-commit2\bus\connection.c(133):  current_count = 
get_connections_for_uid (connections, uid);
  F:\daten\windbus\cvs-commit2\bus\connection.c(137):                 
uid, current_count, adjustment, current_count + adjustment);
  F:\daten\windbus\cvs-commit2\bus\connection.c(147):      
_dbus_hash_table_remove_ulong (connections->completed_by_user, uid);
  
F:\daten\windbus\cvs-commit2\bus\connection.c(155):                                              
uid, _DBUS_INT_TO_POINTER (current_count));
  F:\daten\windbus\cvs-commit2\bus\connection.c(256):          unsigned 
long uid;
  F:\daten\windbus\cvs-commit2\bus\connection.c(262):          if 
(dbus_connection_get_unix_user (connection, &uid))
  
F:\daten\windbus\cvs-commit2\bus\connection.c(265):                                               
uid, -1))
  
F:\daten\windbus\cvs-commit2\bus\connection.c(373):                     
unsigned long   uid,
  F:\daten\windbus\cvs-commit2\bus\connection.c(382):  return 
bus_context_allow_user (d->connections->context, uid);
  F:\daten\windbus\cvs-commit2\bus\connection.c(781):  unsigned long uid;
  F:\daten\windbus\cvs-commit2\bus\connection.c(790):  if 
(dbus_connection_get_unix_user (connection, &uid))
  F:\daten\windbus\cvs-commit2\bus\connection.c(792):      if 
(!_dbus_groups_from_uid (uid, groups, n_groups))
  
F:\daten\windbus\cvs-commit2\bus\connection.c(795):                         
uid);
  
F:\daten\windbus\cvs-commit2\bus\connection.c(801):                         
*n_groups, uid);
  F:\daten\windbus\cvs-commit2\bus\connection.c(1254):  unsigned long uid;
  F:\daten\windbus\cvs-commit2\bus\connection.c(1292):  if 
(dbus_connection_get_unix_user (connection, &uid))
  
F:\daten\windbus\cvs-commit2\bus\connection.c(1295):                                       
uid, 1))
  F:\daten\windbus\cvs-commit2\bus\connection.c(1344):  unsigned long uid;
  F:\daten\windbus\cvs-commit2\bus\connection.c(1359):  if 
(dbus_connection_get_unix_user (requesting_completion, &uid))
  F:\daten\windbus\cvs-commit2\bus\connection.c(1361):      if 
(get_connections_for_uid (connections, uid) >=
  
F:\daten\windbus\cvs-commit2\bus\connection.c(1366):                          
uid);
  F:\daten\windbus\cvs-commit2\bus\dispatch.c(1080):  dbus_uint32_t uid;
  
F:\daten\windbus\cvs-commit2\bus\dispatch.c(1172):                                  
DBUS_TYPE_UINT32, &uid,
  F:\daten\windbus\cvs-commit2\bus\dispatch.c(1177):              
_dbus_verbose ("no memory to get uid by GetConnectionUnixUser\n");
  F:\daten\windbus\cvs-commit2\bus\driver.c(1135):  unsigned long uid;
  F:\daten\windbus\cvs-commit2\bus\driver.c(1168):  if 
(!dbus_connection_get_unix_user (conn, &uid))
  F:\daten\windbus\cvs-commit2\bus\driver.c(1176):  uid32 = uid;
  F:\daten\windbus\cvs-commit2\bus\policy.c(50):      rule->d.user.uid = 
DBUS_UID_UNSET;
  F:\daten\windbus\cvs-commit2\bus\policy.c(276):  dbus_uid_t uid;
  F:\daten\windbus\cvs-commit2\bus\policy.c(325):  if 
(!dbus_connection_get_unix_user (connection, &uid))
  
F:\daten\windbus\cvs-commit2\bus\policy.c(341):                                            
uid);
  F:\daten\windbus\cvs-commit2\bus\policy.c(351):  at_console = 
_dbus_is_console_user (uid, error);
  F:\daten\windbus\cvs-commit2\bus\policy.c(387):                  
unsigned long         uid,
  F:\daten\windbus\cvs-commit2\bus\policy.c(404):          _dbus_verbose 
("List %p user rule uid="DBUS_UID_FORMAT"\n",
  
F:\daten\windbus\cvs-commit2\bus\policy.c(405):                         
list, rule->d.user.uid);
  F:\daten\windbus\cvs-commit2\bus\policy.c(407):          if 
(rule->d.user.uid == DBUS_UID_UNSET)
  F:\daten\windbus\cvs-commit2\bus\policy.c(409):          else if 
(rule->d.user.uid != uid)
  F:\daten\windbus\cvs-commit2\bus\policy.c(414):          _dbus_verbose 
("List %p group rule uid="DBUS_UID_FORMAT"\n",
  
F:\daten\windbus\cvs-commit2\bus\policy.c(415):                         
list, rule->d.user.uid);
  F:\daten\windbus\cvs-commit2\bus\policy.c(446):                       
unsigned long     uid)
  F:\daten\windbus\cvs-commit2\bus\policy.c(453):  if 
(!_dbus_groups_from_uid (uid, &group_ids, &n_group_ids))
  F:\daten\windbus\cvs-commit2\bus\policy.c(456):                     uid);
  F:\daten\windbus\cvs-commit2\bus\policy.c(461):  allowed = uid == 
_dbus_getuid ();
  
F:\daten\windbus\cvs-commit2\bus\policy.c(465):                              
uid,
  
F:\daten\windbus\cvs-commit2\bus\policy.c(470):                              
uid,
  F:\daten\windbus\cvs-commit2\bus\policy.c(475):  _dbus_verbose ("UID 
%lu allowed = %d\n", uid, allowed);
  
F:\daten\windbus\cvs-commit2\bus\policy.c(532):                             
dbus_uid_t      uid,
  F:\daten\windbus\cvs-commit2\bus\policy.c(537):  list = get_list 
(policy->rules_by_uid, uid);
  F:\daten\windbus\cvs-commit2\bus\policy.h(92):      dbus_uid_t uid;
  
F:\daten\windbus\cvs-commit2\bus\policy.h(116):                                                   
unsigned long     uid);
  
F:\daten\windbus\cvs-commit2\bus\policy.h(122):                                                   
dbus_uid_t        uid,
  F:\daten\windbus\cvs-commit2\bus\bus.c(665):          creds.uid < 0 ||
  F:\daten\windbus\cvs-commit2\bus\bus.c(766):      if 
(!_dbus_change_identity (creds.uid, creds.gid, error))
  F:\daten\windbus\cvs-commit2\bus\bus.c(1000):                        
unsigned long uid)
  
F:\daten\windbus\cvs-commit2\bus\bus.c(1003):                                
uid);
  
F:\daten\windbus\cvs-commit2\bus\bus.h(89):                                                                  
unsigned long     uid);
  F:\daten\windbus\cvs-commit2\bus\config-parser.c(1474):          
rule->d.user.uid = DBUS_UID_UNSET;
  F:\daten\windbus\cvs-commit2\bus\config-parser.c(1479):          
dbus_uid_t uid;
  F:\daten\windbus\cvs-commit2\bus\config-parser.c(1483):          if 
(_dbus_get_user_id (&username, &uid))
  F:\daten\windbus\cvs-commit2\bus\config-parser.c(1489):              
rule->d.user.uid = uid;
  
F:\daten\windbus\cvs-commit2\bus\connection.c(111):                         
dbus_uid_t      uid)
  
F:\daten\windbus\cvs-commit2\bus\connection.c(119):                                       
uid);
  
F:\daten\windbus\cvs-commit2\bus\connection.c(128):                            
dbus_uid_t      uid,
  F:\daten\windbus\cvs-commit2\bus\connection.c(133):  current_count = 
get_connections_for_uid (connections, uid);
  F:\daten\windbus\cvs-commit2\bus\connection.c(137):                 
uid, current_count, adjustment, current_count + adjustment);
  F:\daten\windbus\cvs-commit2\bus\connection.c(147):      
_dbus_hash_table_remove_ulong (connections->completed_by_user, uid);
  
F:\daten\windbus\cvs-commit2\bus\connection.c(155):                                              
uid, _DBUS_INT_TO_POINTER (current_count));
  F:\daten\windbus\cvs-commit2\bus\connection.c(256):          unsigned 
long uid;
  F:\daten\windbus\cvs-commit2\bus\connection.c(262):          if 
(dbus_connection_get_unix_user (connection, &uid))
  
F:\daten\windbus\cvs-commit2\bus\connection.c(265):                                               
uid, -1))
  
F:\daten\windbus\cvs-commit2\bus\connection.c(373):                     
unsigned long   uid,
  F:\daten\windbus\cvs-commit2\bus\connection.c(382):  return 
bus_context_allow_user (d->connections->context, uid);
  F:\daten\windbus\cvs-commit2\bus\connection.c(781):  unsigned long uid;
  F:\daten\windbus\cvs-commit2\bus\connection.c(790):  if 
(dbus_connection_get_unix_user (connection, &uid))
  F:\daten\windbus\cvs-commit2\bus\connection.c(792):      if 
(!_dbus_groups_from_uid (uid, groups, n_groups))
  
F:\daten\windbus\cvs-commit2\bus\connection.c(795):                         
uid);
  
F:\daten\windbus\cvs-commit2\bus\connection.c(801):                         
*n_groups, uid);
  F:\daten\windbus\cvs-commit2\bus\connection.c(1254):  unsigned long uid;
  F:\daten\windbus\cvs-commit2\bus\connection.c(1292):  if 
(dbus_connection_get_unix_user (connection, &uid))
  
F:\daten\windbus\cvs-commit2\bus\connection.c(1295):                                       
uid, 1))
  F:\daten\windbus\cvs-commit2\bus\connection.c(1344):  unsigned long uid;
  F:\daten\windbus\cvs-commit2\bus\connection.c(1359):  if 
(dbus_connection_get_unix_user (requesting_completion, &uid))
  F:\daten\windbus\cvs-commit2\bus\connection.c(1361):      if 
(get_connections_for_uid (connections, uid) >=
  
F:\daten\windbus\cvs-commit2\bus\connection.c(1366):                          
uid);
  F:\daten\windbus\cvs-commit2\bus\dispatch.c(1080):  dbus_uint32_t uid;
  
F:\daten\windbus\cvs-commit2\bus\dispatch.c(1172):                                  
DBUS_TYPE_UINT32, &uid,
  F:\daten\windbus\cvs-commit2\bus\dispatch.c(1177):              
_dbus_verbose ("no memory to get uid by GetConnectionUnixUser\n");
  F:\daten\windbus\cvs-commit2\bus\driver.c(1135):  unsigned long uid;
  F:\daten\windbus\cvs-commit2\bus\driver.c(1168):  if 
(!dbus_connection_get_unix_user (conn, &uid))
  F:\daten\windbus\cvs-commit2\bus\driver.c(1176):  uid32 = uid;
  F:\daten\windbus\cvs-commit2\bus\policy.c(50):      rule->d.user.uid = 
DBUS_UID_UNSET;
  F:\daten\windbus\cvs-commit2\bus\policy.c(276):  dbus_uid_t uid;
  F:\daten\windbus\cvs-commit2\bus\policy.c(325):  if 
(!dbus_connection_get_unix_user (connection, &uid))
  
F:\daten\windbus\cvs-commit2\bus\policy.c(341):                                            
uid);
  F:\daten\windbus\cvs-commit2\bus\policy.c(351):  at_console = 
_dbus_is_console_user (uid, error);
  F:\daten\windbus\cvs-commit2\bus\policy.c(387):                  
unsigned long         uid,
  F:\daten\windbus\cvs-commit2\bus\policy.c(404):          _dbus_verbose 
("List %p user rule uid="DBUS_UID_FORMAT"\n",
  
F:\daten\windbus\cvs-commit2\bus\policy.c(405):                         
list, rule->d.user.uid);
  F:\daten\windbus\cvs-commit2\bus\policy.c(407):          if 
(rule->d.user.uid == DBUS_UID_UNSET)
  F:\daten\windbus\cvs-commit2\bus\policy.c(409):          else if 
(rule->d.user.uid != uid)
  F:\daten\windbus\cvs-commit2\bus\policy.c(414):          _dbus_verbose 
("List %p group rule uid="DBUS_UID_FORMAT"\n",
  
F:\daten\windbus\cvs-commit2\bus\policy.c(415):                         
list, rule->d.user.uid);
  F:\daten\windbus\cvs-commit2\bus\policy.c(446):                       
unsigned long     uid)
  F:\daten\windbus\cvs-commit2\bus\policy.c(453):  if 
(!_dbus_groups_from_uid (uid, &group_ids, &n_group_ids))
  F:\daten\windbus\cvs-commit2\bus\policy.c(456):                     uid);
  F:\daten\windbus\cvs-commit2\bus\policy.c(461):  allowed = uid == 
_dbus_getuid ();
  
F:\daten\windbus\cvs-commit2\bus\policy.c(465):                              
uid,
  
F:\daten\windbus\cvs-commit2\bus\policy.c(470):                              
uid,
  F:\daten\windbus\cvs-commit2\bus\policy.c(475):  _dbus_verbose ("UID 
%lu allowed = %d\n", uid, allowed);
  
F:\daten\windbus\cvs-commit2\bus\policy.c(532):                             
dbus_uid_t      uid,
  F:\daten\windbus\cvs-commit2\bus\policy.c(537):  list = get_list 
(policy->rules_by_uid, uid);
  F:\daten\windbus\cvs-commit2\bus\policy.h(92):      dbus_uid_t uid;
  
F:\daten\windbus\cvs-commit2\bus\policy.h(116):                                                   
unsigned long     uid);
  
F:\daten\windbus\cvs-commit2\bus\policy.h(122):                                                   
dbus_uid_t        uid,
  
F:\daten\windbus\cvs-commit2\dbus\dbus-connection.h(141):                                                    
unsigned long   uid,
  
F:\daten\windbus\cvs-commit2\dbus\dbus-connection.h(215):                                                                 
unsigned long              *uid);

gid occurence

  
F:\daten\windbus\cvs-commit2\dbus\dbus-auth.c(1058):                     
" gid="DBUS_GID_FORMAT
  
F:\daten\windbus\cvs-commit2\dbus\dbus-auth.c(1060):                     
" gid="DBUS_GID_FORMAT"\n",
  
F:\daten\windbus\cvs-commit2\dbus\dbus-auth.c(1062):                     
auth->credentials.uid, auth->credentials.gid,
  
F:\daten\windbus\cvs-commit2\dbus\dbus-auth.c(1063):                     
auth->desired_identity.uid, auth->desired_identity.gid);
  F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.c(627):  
credentials->gid = DBUS_GID_UNSET;
  F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.h(112):    char gid[128];
  F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.h(193):  dbus_gid_t 
gid; /**< group ID or DBUS_GID_UNSET */
  F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.h(235):  dbus_gid_t  
gid;            /**< GID */
  
F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.h(251):                                       
dbus_gid_t        gid,
  F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.h(408):  dbus_gid_t    
gid;   /**< Group owning file */
  
F:\daten\windbus\cvs-commit2\dbus\dbus-sysdeps.h(432):                                   
unsigned long     gid,
  F:\daten\windbus\cvs-commit2\dbus\dbus-transport.c(167):  
transport->credentials.gid = -1;
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(140):  
credentials->gid = info->primary_gid;
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(175): * @param 
gid return location for GID
  
F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(180):                    
dbus_gid_t        *gid)
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(200):  *gid = 
info->gid;
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(207): * Looks up 
a gid or group name in the user database.  Only one of
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(213): * @param 
gid the group ID or #DBUS_GID_UNSET
  
F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(220):                                  
dbus_gid_t        gid,
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(229):   if (gid 
== DBUS_UID_UNSET)
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(234):        gid = n;
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(238):  if (gid != 
DBUS_GID_UNSET)
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(239):    info = 
_dbus_hash_table_lookup_ulong (db->groups, gid);
  
F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(246):                     
info->gid);
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(254):      if 
(gid != DBUS_GID_UNSET)
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(256):        
       gid);
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(268):      if 
(gid != DBUS_GID_UNSET)
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(270):          if 
(!_dbus_group_info_fill_gid (info, gid, error))
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(288):      gid = 
DBUS_GID_UNSET;
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(291):      if 
(!_dbus_hash_table_insert_ulong (db->groups, info->gid, info))
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(303):          
_dbus_hash_table_remove_ulong (db->groups, info->gid);
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(338): * @param 
gid the group ID
  
F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(345):                             
dbus_gid_t            gid,
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb-util.c(349):  *info = 
_dbus_user_database_lookup_group (db, gid, NULL, error);
  F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.c(445):  
credentials->gid = info->primary_gid;
  
F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.h(60):                                                     
dbus_gid_t            gid,
  
F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.h(77):                                                 
dbus_gid_t        gid,
  
F:\daten\windbus\cvs-commit2\dbus\dbus-userdb.h(96):                                                 
dbus_gid_t        *gid);
  F:\daten\windbus\cvs-commit2\bus\bus.c(666):          creds.gid < 0)
  F:\daten\windbus\cvs-commit2\bus\bus.c(766):      if 
(!_dbus_change_identity (creds.uid, creds.gid, error))
  F:\daten\windbus\cvs-commit2\bus\config-parser.c(1506):          
rule->d.group.gid = DBUS_GID_UNSET;
  F:\daten\windbus\cvs-commit2\bus\config-parser.c(1511):          
dbus_gid_t gid;
  F:\daten\windbus\cvs-commit2\bus\config-parser.c(1515):          if 
(_dbus_get_user_id (&groupname, &gid))
  F:\daten\windbus\cvs-commit2\bus\config-parser.c(1521):              
rule->d.group.gid = gid;
  
F:\daten\windbus\cvs-commit2\bus\connection.c(811):                            
unsigned long   gid)
  F:\daten\windbus\cvs-commit2\bus\connection.c(824):      if 
(group_ids[i] == gid)
  
F:\daten\windbus\cvs-commit2\bus\connection.h(109):                                             
unsigned long         gid);
  F:\daten\windbus\cvs-commit2\bus\policy.c(53):      rule->d.group.gid 
= DBUS_GID_UNSET;
  F:\daten\windbus\cvs-commit2\bus\policy.c(417):          if 
(rule->d.group.gid == DBUS_GID_UNSET)
  F:\daten\windbus\cvs-commit2\bus\policy.c(426):                  if 
(rule->d.group.gid == group_ids[i])
  
F:\daten\windbus\cvs-commit2\bus\policy.c(552):                              
dbus_gid_t      gid,
  F:\daten\windbus\cvs-commit2\bus\policy.c(557):  list = get_list 
(policy->rules_by_gid, gid);
  F:\daten\windbus\cvs-commit2\bus\policy.h(98):      dbus_gid_t gid;
  
F:\daten\windbus\cvs-commit2\bus\policy.h(125):                                                   
dbus_gid_t        gid,
  F:\daten\windbus\cvs-commit2\bus\bus.c(666):          creds.gid < 0)
  F:\daten\windbus\cvs-commit2\bus\bus.c(766):      if 
(!_dbus_change_identity (creds.uid, creds.gid, error))
  F:\daten\windbus\cvs-commit2\bus\config-parser.c(1506):          
rule->d.group.gid = DBUS_GID_UNSET;
  F:\daten\windbus\cvs-commit2\bus\config-parser.c(1511):          
dbus_gid_t gid;
  F:\daten\windbus\cvs-commit2\bus\config-parser.c(1515):          if 
(_dbus_get_user_id (&groupname, &gid))
  F:\daten\windbus\cvs-commit2\bus\config-parser.c(1521):              
rule->d.group.gid = gid;
  
F:\daten\windbus\cvs-commit2\bus\connection.c(811):                            
unsigned long   gid)
  F:\daten\windbus\cvs-commit2\bus\connection.c(824):      if 
(group_ids[i] == gid)
  
F:\daten\windbus\cvs-commit2\bus\connection.h(109):                                             
unsigned long         gid);
  F:\daten\windbus\cvs-commit2\bus\policy.c(53):      rule->d.group.gid 
= DBUS_GID_UNSET;
  F:\daten\windbus\cvs-commit2\bus\policy.c(417):          if 
(rule->d.group.gid == DBUS_GID_UNSET)
  F:\daten\windbus\cvs-commit2\bus\policy.c(426):                  if 
(rule->d.group.gid == group_ids[i])
  
F:\daten\windbus\cvs-commit2\bus\policy.c(552):                              
dbus_gid_t      gid,
  F:\daten\windbus\cvs-commit2\bus\policy.c(557):  list = get_list 
(policy->rules_by_gid, gid);
  F:\daten\windbus\cvs-commit2\bus\policy.h(98):      dbus_gid_t gid;
  
F:\daten\windbus\cvs-commit2\bus\policy.h(125):                                                   
dbus_gid_t        gid,



More information about the dbus mailing list