~ubuntu-branches/ubuntu/wily/bluez/wily

« back to all changes in this revision

Viewing changes to input/manager.c

ImportĀ upstreamĀ versionĀ 4.81

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
 *
3
3
 *  BlueZ - Bluetooth protocol stack for Linux
4
4
 *
5
 
 *  Copyright (C) 2004-2009  Marcel Holtmann <marcel@holtmann.org>
 
5
 *  Copyright (C) 2004-2010  Marcel Holtmann <marcel@holtmann.org>
6
6
 *
7
7
 *
8
8
 *  This program is free software; you can redistribute it and/or modify
34
34
 
35
35
#include <gdbus.h>
36
36
 
37
 
#include "logging.h"
 
37
#include "log.h"
38
38
#include "../src/adapter.h"
39
39
#include "../src/device.h"
40
40
 
45
45
static int idle_timeout = 0;
46
46
 
47
47
static DBusConnection *connection = NULL;
 
48
static GSList *adapters = NULL;
48
49
 
49
50
static void input_remove(struct btd_device *device, const char *uuid)
50
51
{
70
71
        adapter_get_address(adapter, &src);
71
72
        device_get_address(device, &dst);
72
73
 
73
 
        return input_device_register(connection, path, &src, &dst,
 
74
        return input_device_register(connection, device, path, &src, &dst,
74
75
                                HID_UUID, rec->handle, idle_timeout * 60);
75
76
}
76
77
 
113
114
        adapter_get_address(adapter, &src);
114
115
        device_get_address(device, &dst);
115
116
 
116
 
        return fake_input_register(connection, path, &src, &dst,
 
117
        return fake_input_register(connection, device, path, &src, &dst,
117
118
                                HSP_HS_UUID, ch);
118
119
}
119
120
 
125
126
static int hid_server_probe(struct btd_adapter *adapter)
126
127
{
127
128
        bdaddr_t src;
 
129
        int ret;
128
130
 
129
131
        adapter_get_address(adapter, &src);
130
132
 
131
 
        return server_start(&src);
 
133
        ret = server_start(&src);
 
134
        if (ret < 0)
 
135
                return ret;
 
136
 
 
137
        adapters = g_slist_append(adapters, btd_adapter_ref(adapter));
 
138
 
 
139
        return 0;
132
140
}
133
141
 
134
142
static void hid_server_remove(struct btd_adapter *adapter)
138
146
        adapter_get_address(adapter, &src);
139
147
 
140
148
        server_stop(&src);
 
149
 
 
150
        adapters = g_slist_remove(adapters, adapter);
 
151
        btd_adapter_unref(adapter);
141
152
}
142
153
 
143
154
static struct btd_device_driver input_hid_driver = {
168
179
                idle_timeout = g_key_file_get_integer(config, "General",
169
180
                                                "IdleTimeout", &err);
170
181
                if (err) {
171
 
                        debug("input.conf: %s", err->message);
 
182
                        DBG("input.conf: %s", err->message);
172
183
                        g_error_free(err);
173
184
                }
174
185
        }