? hcid/.deps ? hcid/.libs ? hcid/Makefile ? hcid/Makefile.in ? hcid/hcid ? hcid/lexer.c ? hcid/parser.c ? hcid/parser.h Index: hcid/dbus-api.txt =================================================================== RCS file: /cvsroot/bluez/utils/hcid/dbus-api.txt,v retrieving revision 1.108 diff -u -r1.108 dbus-api.txt --- hcid/dbus-api.txt 6 Mar 2007 13:37:39 -0000 1.108 +++ hcid/dbus-api.txt 9 Mar 2007 11:14:46 -0000 @@ -1021,6 +1021,11 @@ This signal will be sent every time the service daemon tries to resolve a remote and this fails. + void RemoteNameRequested(string address) + + This signal will be sent every time the service daemon + tries to resolve a remote name during discovery. + void RemoteAliasChanged(string address, string alias) After changing an alias with SetRemoteAlias this Index: hcid/dbus-hci.c =================================================================== RCS file: /cvsroot/bluez/utils/hcid/dbus-hci.c,v retrieving revision 1.16 diff -u -r1.16 dbus-hci.c --- hcid/dbus-hci.c 26 Feb 2007 14:13:50 -0000 1.16 +++ hcid/dbus-hci.c 9 Mar 2007 11:14:47 -0000 @@ -1005,7 +1005,7 @@ /* send at least one request or return failed if the list is empty */ do { - DBusMessage *failed_signal = NULL; + DBusMessage *signal = NULL; struct remote_dev_info *dev = l->data; char *peer_addr; bdaddr_t tmp; @@ -1023,7 +1023,7 @@ if (hci_send_req(dd, &rq, 500) < 0) { error("Unable to send the HCI remote name request: %s (%d)", strerror(errno), errno); - failed_signal = dev_signal_factory(adapter->dev_id, + signal = dev_signal_factory(adapter->dev_id, "RemoteNameFailed", DBUS_TYPE_STRING, &peer_addr, DBUS_TYPE_INVALID); @@ -1032,21 +1032,30 @@ if (rp.status) { error("Remote name request failed with status 0x%02x", rp.status); - failed_signal = dev_signal_factory(adapter->dev_id, + signal = dev_signal_factory(adapter->dev_id, "RemoteNameFailed", DBUS_TYPE_STRING, &peer_addr, DBUS_TYPE_INVALID); } - free(peer_addr); - - if (!failed_signal) { + if (!signal) { req_sent = 1; - break; + /* if we are in discovery, inform application of getting name */ + if (adapter->discov_type & (STD_INQUIRY | PERIODIC_INQUIRY)) { + signal = dev_signal_factory(adapter->dev_id, + "RemoteNameRequested", + DBUS_TYPE_STRING, &peer_addr, + DBUS_TYPE_INVALID); + } else { + free(peer_addr); + break; + } } - send_message_and_unref(connection, failed_signal); - failed_signal = NULL; + free(peer_addr); + + send_message_and_unref(connection, signal); + signal = NULL; /* if failed, request the next element */ /* remove the element from the list */