summaryrefslogtreecommitdiff
path: root/altosui/libaltos
diff options
context:
space:
mode:
Diffstat (limited to 'altosui/libaltos')
-rw-r--r--altosui/libaltos/cjnitest.c2
-rw-r--r--altosui/libaltos/libaltos.c16
-rw-r--r--altosui/libaltos/libaltos.h5
3 files changed, 17 insertions, 6 deletions
diff --git a/altosui/libaltos/cjnitest.c b/altosui/libaltos/cjnitest.c
index 79561643..88e40d73 100644
--- a/altosui/libaltos/cjnitest.c
+++ b/altosui/libaltos/cjnitest.c
@@ -41,7 +41,7 @@ main ()
altos_close(file);
}
altos_list_finish(list);
- bt_list = altos_bt_list_start();
+ bt_list = altos_bt_list_start(8);
while (altos_bt_list_next(bt_list, &bt_device)) {
printf ("%s %s\n", bt_device.name, bt_device.addr);
if (strncmp(bt_device.name, "TeleBT", 6) == 0) {
diff --git a/altosui/libaltos/libaltos.c b/altosui/libaltos/libaltos.c
index 13635a0d..2c47f3e5 100644
--- a/altosui/libaltos/libaltos.c
+++ b/altosui/libaltos/libaltos.c
@@ -591,10 +591,9 @@ struct altos_bt_list {
};
#define INQUIRY_MAX_RSP 255
-#define INQUIRY_LEN 8
struct altos_bt_list *
-altos_bt_list_start(void)
+altos_bt_list_start(int inquiry_time)
{
struct altos_bt_list *bt_list;
@@ -614,7 +613,7 @@ altos_bt_list_start(void)
goto no_sock;
bt_list->num_rsp = hci_inquiry(bt_list->dev_id,
- INQUIRY_LEN,
+ inquiry_time,
INQUIRY_MAX_RSP,
NULL,
&bt_list->ii,
@@ -665,6 +664,15 @@ altos_bt_list_finish(struct altos_bt_list *bt_list)
free(bt_list);
}
+void
+altos_bt_fill_in(char *name, char *addr, struct altos_bt_device *device)
+{
+ strncpy(device->name, name, sizeof (device->name));
+ device->name[sizeof(device->name)-1] = '\0';
+ strncpy(device->addr, addr, sizeof (device->addr));
+ device->addr[sizeof(device->addr)-1] = '\0';
+}
+
struct altos_file *
altos_bt_open(struct altos_bt_device *device)
{
@@ -768,7 +776,7 @@ get_number(io_object_t object, CFStringRef entry, int *result)
}
struct altos_list *
-altos_list_start(void)
+altos_list_start(int time)
{
struct altos_list *list = calloc (sizeof (struct altos_list), 1);
CFMutableDictionaryRef matching_dictionary = IOServiceMatching("IOUSBDevice");
diff --git a/altosui/libaltos/libaltos.h b/altosui/libaltos/libaltos.h
index 9c3f9655..f710919c 100644
--- a/altosui/libaltos/libaltos.h
+++ b/altosui/libaltos/libaltos.h
@@ -110,7 +110,7 @@ PUBLIC int
altos_getchar(struct altos_file *file, int timeout);
PUBLIC struct altos_bt_list *
-altos_bt_list_start(void);
+altos_bt_list_start(int inquiry_time);
PUBLIC int
altos_bt_list_next(struct altos_bt_list *list, struct altos_bt_device *device);
@@ -118,6 +118,9 @@ altos_bt_list_next(struct altos_bt_list *list, struct altos_bt_device *device);
PUBLIC void
altos_bt_list_finish(struct altos_bt_list *list);
+PUBLIC void
+altos_bt_fill_in(char *name, char *addr, struct altos_bt_device *device);
+
PUBLIC struct altos_file *
altos_bt_open(struct altos_bt_device *device);