static void gsm_dbus_client_set_bus_name (GsmDBusClient *client, const char *bus_name) { uid_t uid; pid_t pid; g_return_if_fail (GSM_IS_DBUS_CLIENT (client)); g_free (client->priv->bus_name); client->priv->bus_name = g_strdup (bus_name); g_object_notify (G_OBJECT (client), "bus-name"); if (client->priv->bus_name != NULL) { gboolean res; res = get_caller_info (client, bus_name, &uid, &pid); if (! res) { pid = 0; } } else { pid = 0; } client->priv->caller_pid = pid; }
int main () { char sender[1024]; pid_t caller_pid; char *session_id; g_type_init (); g_print ("sender name:"); scanf ("%s", sender); caller_pid = get_caller_info (sender); g_print ("Pid: %u\n", caller_pid); session_id = get_session (caller_pid); g_print ("Session: %s\n", session_id); g_free (session_id); return 0; }